Javascript+Rails表单+模态|当模态术语“已接受”时勾选复选框

Javascript+Rails表单+模态|当模态术语“已接受”时勾选复选框,javascript,jquery,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,Javascript,Jquery,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,有人能告诉我为什么我的脚本不起作用吗:当按钮点击弹出模式时,想勾选from上的复选框 <script> $("#updateTerms").click(function() { document.getElementById("terms").checked = true; }); </script> 在模态中: < button id="updateTerms" type="button" class="btn btn-primary" data-dism

有人能告诉我为什么我的脚本不起作用吗:当按钮点击弹出模式时,想勾选from上的复选框

<script>
$("#updateTerms").click(function() {
   document.getElementById("terms").checked = true;
});
</script>
在模态中:

< button id="updateTerms" type="button" class="btn btn-primary" data-dismiss="modal">I agree</button>
形式:

<%= f.check_box :terms, :id => "terms", :label => "Terms" , :class => 'checkbox'%>
代码:document.getElementById'terms'将第一个输入与该id匹配。可能有多个输入吗

在浏览器控制台中尝试以下操作:

$('#terms')
或者

修改您的js并重试 jquery1.6+

使用新的.prop函数:

$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);
jQuery 1.5及以下版本

.prop函数不可用,因此需要使用.attr

要通过设置已选中属性的值来选中复选框,请执行以下操作:

$('.myCheckbox').attr('checked','checked');
如果要通过完全删除属性来取消检查,请执行以下操作

$('.myCheckbox').removeAttr('checked');

您好,谢谢您的回复-ran$'terms'。长度-只有一个!
$('.myCheckbox').removeAttr('checked');