Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中创建筛选器以通过url筛选结果_Javascript_Jquery_Html_Ruby On Rails_Ajax - Fatal编程技术网

在javascript中创建筛选器以通过url筛选结果

在javascript中创建筛选器以通过url筛选结果,javascript,jquery,html,ruby-on-rails,ajax,Javascript,Jquery,Html,Ruby On Rails,Ajax,我觉得我真的很快就能弄明白了。我尝试了很多不同的方法 我想在协议模型中创建两个选项,一个用于写入类型,另一个用于排序,以过滤结果。我想我需要在JS文件中为index.html编写一个不同的代码,并可能在我的控制器中进行编辑 我找到了一个解决问题的办法,但我想不出剩下的办法来解决这个问题 我认为我需要做的是:更改模型变量以接受params[:writing_type]和:sort_by Index.html 书写类型 大学申请 大学论文 商业文件 恢复 高中作文 奖学金论文 语言翻译 排序 到期

我觉得我真的很快就能弄明白了。我尝试了很多不同的方法

我想在协议模型中创建两个选项,一个用于写入类型,另一个用于排序,以过滤结果。我想我需要在JS文件中为index.html编写一个不同的代码,并可能在我的控制器中进行编辑

我找到了一个解决问题的办法,但我想不出剩下的办法来解决这个问题

我认为我需要做的是:更改模型变量以接受params[:writing_type]和:sort_by

Index.html

书写类型 大学申请 大学论文 商业文件 恢复 高中作文 奖学金论文 语言翻译 排序 到期日结算员 到期日
我觉得你在用一种相当艰难的方式做一些直截了当的事情。您应该能够在没有所有JS的情况下通过以下方式实现您想要的:

<form accept-charset="UTF-8" action="/agreements" method="get">
  <input type='submit' value="go">

  <select id="querySelct" name="writing_type">
    <option value="0" label="Writing Type">Writing Type</option>
    <option value="1" label="College Applications">College Applications</option>
    <option value="2" label="College Essays">College Essays</option>
    <option value="3" label="Business Papers">Business Papers</option>
    <option value="4" label="Resumes">Resumes</option>
    <option value="5" label="High-School Essays">High-School Essays</option>
    <option value="6" label="Scholarship Essays">Scholarship Essays</option> 
    <option value="6" label="Language Translation">Language Translation</option>   
  </select>

  <select id="landingSelect" name= "sort_by">
    <option value="0" label="Sort By">Sort By</option>
    <option value="1" label="Due Date(closer)">Due Date(closer)</option>
    <option value="2" label="Due Date(further)">Due Date(further)</option>
  </select>

</form>

好吧,我把数字改成实际的书写类型,然后换控制器。但是,如何使writing类型的默认值成为所有writing类型?我试着在第一个选项的选择选项中创建一个数组,但是我没有得到任何结果。只是添加了一个更新来显示如何在控制器中处理它。我改变了,这似乎可以在开始过滤之前加载页面。我没有得到任何结果,直到我单击go按钮。我怎样才能让它自动加载所有文件?我在选项中添加了selected for all,但似乎表单必须先通过。是否有一种在表单提交前显示的方法?或者formsubmit on load?在页面的第一次加载时,没有参数[:writing_type]将不存在,因此您可以将if语句更改为if params[:writing_type]==all | | params[:writing_type]。无?为了默认allyea哈哈,我刚刚添加了这个参数,如果params[:writing_type]==nil params[:writing_type]=all end
if params[:writing_type] == "all" #or whatever option represents all
  @agreements = Agreement.all
else
  @agreements = Agreement.where(writing_type: params[:writing_type])
end