Ruby on rails 带有ajax的Rails复选框和U标记
我正在尝试使用Rails 3.2.11中的复选框来了解如何使用ajax传递数据。我的观点如下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}) %> 当我更改复选
<%= 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