Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.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
Jquery下拉搜索rails 2_Jquery_Ruby On Rails - Fatal编程技术网

Jquery下拉搜索rails 2

Jquery下拉搜索rails 2,jquery,ruby-on-rails,Jquery,Ruby On Rails,如何进行选择(下拉)搜索。我有3个选择,当用户选择一个下拉列表时,result div将重新加载以显示主题的结果 Senario: select year | select semester | select course <div id="result"> list of subjects base on the 3 selections </div> 塞纳里奥: 选择年份|选择学期|选择课程 基于3个选项的主题列表 发送aja

如何进行选择(下拉)搜索。我有3个选择,当用户选择一个下拉列表时,result div将重新加载以显示主题的结果

Senario:

     select year | select semester | select course

    <div id="result">
     list of subjects base on the 3 selections
    </div>
塞纳里奥: 选择年份|选择学期|选择课程 基于3个选项的主题列表
发送ajax并收集搜索结果。在search.js.haml中,将div'result'替换为将列出搜索结果的分部。

我不确定下面的代码是否适用于rails 2.3,但它适用于rails 3

$("#third_select_box_id").change ->
  first_select_box_data = $("#first_select_box_id").val()
  second_select_box_data = $("#second_select_box_id").val()
  third_select_box_data = $("#third_select_box_id").val()
  #add code to check that the first n second dropdown list have some data that has been    selected
  if (the data has been selected in all dropdown lists then )
    $.ajax
      type: "GET"
      data: "year="+first_select_box_data+"&semester="+second_select_box_data+"&course="+third_select_box_data
      url:"/courses/get_results"
如果你想在未选择年份或学期的情况下显示数据,请不要执行上述“咖啡脚本”中的签入操作。沿途

resources: courses do
  get 'get_results'
end
课程控制员

def get_results
  @results = #ur logic to collect all results based on received params. Handle the condition that year or semester isnt selected(if u want to)
  respond_to do |format|
    format.js{}
  end
end
在get_results.js.haml中

$("#result").html("#{escape_javascript(render :partial => 'results')}")
在_results.html.haml中

#ur logic to display the @results

考虑使用列表中的数据,因为它会提高性能。您需要研究Ajax(jQuery非常支持它)并理解Rails中MVC的关系。阅读这些主题,我认为这将极大地推动你对如何解决问题的理解。如果你能给出一点代码,我将不胜感激,同时我也更新了这篇文章。顺便说一下,我正在使用rails 2.3。