0

有一个选择标签,我想实现一个选项一旦被选中,对应的结果会显示在下面的功能。

这是我的代码:

<%= select_tag :institute, options_for_select(Course::INSTITUTE_LIST), data: {remote: true,  url: url_for(controller: 'courses_store', action: 'index')} %>

和我的控制器:

class CoursesStoreController < ApplicationController
  def index
    institute = params[:institute]
     @courses = Course.paginate :page => params[:page],
                                  :per_page => 10,
                                  :conditions => ["institute like ?", "%#{institute}%"],
                                  :order => 'institute',
                                  :order => 'name'
    @page_now = params[:page]

    respond_to do |format|
      format.html
      format.js
      format.json { render json: @courses }
    end
  end
end

但是当我单击选项时没有响应。你能帮我解决这个问题吗?谢谢!;)

4

1 回答 1

0

不知道,select_tag有这个:data标签。

我应该建议你使用ajax.

更新

给你一个classidselect_tag

<%= select_tag :institute, options_for_select(Course::INSTITUTE_LIST), :id => "institute"%>

然后写一些脚本

<script>
$("#institute").change(function() {
  var institute = $("#institute").val
   $.ajax({
        type: "post",
        url: "<%= path_of_your_controller_action %>",
        data: {institute: institute},
        dataType:'script',
            beforeSend: function(){
                // do whatever you want
            },
            success: function(response){
                // do whatever you want
            }
        });
});
</script>
于 2013-07-08T15:23:13.313 回答