Jquery Rails:在选择标签上搜索

Jquery Rails:在选择标签上搜索,jquery,ruby-on-rails,ajax,Jquery,Ruby On Rails,Ajax,我想要的是在选择select时将结果作为选项加载到我的索引上。我已经成功地做到了这一点,但是,我不确定这是正确的方法 视图: 这里,text和text\u value是在模型中定义的函数,请避免使用它们 下面是我的代码。如果这不是最好的方式,我很抱歉 $(function(){ $("#email_template").change(function(){ var v = $("#email_template option:selected").data('t'); if (

我想要的是在选择
select
时将结果作为选项加载到我的索引上。我已经成功地做到了这一点,但是,我不确定这是正确的方法

视图:

这里,
text
text\u value
是在模型中定义的函数,请避免使用它们

下面是我的代码。如果这不是最好的方式,我很抱歉

$(function(){
  $("#email_template").change(function(){
    var v = $("#email_template option:selected").data('t');
    if (v == "DefaultEmailTemplate")
    {
      var id = $("#email_template option:selected").val();
      $.ajax({
        type: "GET",
        url: "/email_templates?email_template=" + id,
        success: function(data){
          location.href = "/email_templates?email_template=" + id
        }

      });
    }
    else if(v == "AutomationSeries") {
      var id = $("#email_template").val();
      $.ajax({
        type: "GET",
        url: "/email_templates?automation_series=" + id,
        success: function(data){
          location.href = "/email_templates?automation_series=" + id
        }    
      });
    }
    else{
      $.ajax({
        type: "GET",
        url: "/email_templates",
        success: function(data){
          location.href = "/email_templates"
        }
      });
    }
  });
});
我的问题是,在ajax成功后,我必须设置
location.href=“/email\u templates”
,因为这样我就不会被重定向。此外,由于此重定向,我失去了所选值,默认提示选项显示在
选择
中,而不是执行搜索的
选项
。我也不太确定是否提供
URL
,因为它实际上没有什么区别

如果我不清楚,我很抱歉。我已经为这个挠头好几个小时了


注意:这里是Rails和Ajax新手。

您不应该设置
location.href
。你应该做的是使用服务器返回给你的
数据
,并在你的页面中填充内容。我的索引页面中有这个。在我的控制器中,我检查参数是否设置并相应地显示记录。为了使索引相应地显示记录,我希望在url中发送参数,并因此使用location.href,否则,选择时不会发生任何事情。我很抱歉,如果代码似乎是错误的,但这是我所知道的,所以实现。如果有更好的解决方案,请指导我。现在,除了应该“选择”所选选项的部分之外,所有功能都可以正常工作。您不应该设置
location.href
。你应该做的是使用服务器返回给你的
数据
,并在你的页面中填充内容。我的索引页面中有这个。在我的控制器中,我检查参数是否设置并相应地显示记录。为了使索引相应地显示记录,我希望在url中发送参数,并因此使用location.href,否则,选择时不会发生任何事情。我很抱歉,如果代码似乎是错误的,但这是我所知道的,所以实现。如果有更好的解决方案,请指导我。现在,除了应该“选择”所选选项的部分之外,所有功能都可以正常工作。