首页 > 解决方案 > 在 Rails 中使用与本地和远程相同的形式进行过滤

问题描述

设想:

我有一个表格可以进行一些过滤。为简单起见,假设我有一个包含三个输入选项的表单:

<%= form_tag(some_path,method: :get) do %>
     #..checkboxes for option 1
     #..radiobuttons for option 2
     #..checkboxes for option 3
     <%= submit_tag "submit" %>
<% end %>
<p>You have a total of: COUNT results.</p>

所需输出:

我想要的是当用户单击任何复选框或单选按钮时的功能,(本质上是任何输入字段的更改),通过 ajax 请求应该生成到返回总结果的 COUNT 的路径,我将更新 COUNT在带有返回计数的 p 标签内。

当用户点击提交按钮时,应该生成默认的 GET 请求。

标签: ruby-on-railsajaxruby-on-rails-4

解决方案


我为 ajax 请求添加了这个脚本,它工作得很好。

<script>
$(".option").change(function(){
    var type = $("input[name='type[]']:checked").map(function () {
        return this.value;
    }).get();

    $.ajax({
        url: "/gre",
        type: "put",
        dataType: "json",
        data: {custom: 'true',type: type},
        success: function (response) {
          var count = response["count"];
          $('#count').html('Your session will have a total of '+ count + ' questions.');
        }
    });
});


推荐阅读