Ruby on rails 带有ajax的Rails复选框和U标记

Ruby on rails 带有ajax的Rails复选框和U标记,ruby-on-rails,ajax,checkbox,Ruby On Rails,Ajax,Checkbox,我正在尝试使用Rails 3.2.11中的复选框来了解如何使用ajax传递数据。我的观点如下 <%= check_box_tag( "institution_ids_#{inst.name.gsub(" ", "")}", inst.id, false, data: { remote: true, institution_id: inst.id}) %> 当我更改复选

我正在尝试使用Rails 3.2.11中的复选框来了解如何使用ajax传递数据。我的观点如下

<%= check_box_tag(
        "institution_ids_#{inst.name.gsub(" ", "")}",
          inst.id,
          false,
        data: {
          remote: true,
          institution_id: inst.id}) %>


当我更改复选框的状态时,我可以看到控制器被正确调用(特别是控制器的index方法,这是我想要的,因为这是我所在的视图),但是,我似乎无法从控制器上的params散列访问institution_id变量。有人能解释一下我是如何使用ajax在复选框内将数据从视图传递到控制器的吗。我认为remote:true函数可以正确地使用我设置的附加参数调用控制器(确实如此)。

为什么不使用jquery进行
Ajax
调用呢

<%= check_box_tag( "institution_ids_#{inst.name.gsub(" ", "")}", inst.id, false %>

<script>
     $('#checkbox_id').change(function(){
        $.get('controller/action?inst_id='+$(this).val(), function(data,status){
            if(status == 'success'){
              alert(data)
             }
        })
     })
   </script>

我想我可以这样做。我有很多复选框,我想如果我能把所有的事情都内联起来,这会更容易理解。这是不可能的吗?试着这样使用:
:data=>{:remote=>true,:url=>{:action=>action\u name,:institution\u id=>inst.id}
所以上面的方法不起作用,但这确实起作用了:{remote:true,url:url\u for(action::index,institution\u id:inst.id),inst\id}
def action
   inst_id = params[:inst_id]
   #do something
   render :text => "success" 
end