按ID选择全部/取消全选复选框

时间:2014-09-19 16:17:58

标签: javascript ruby-on-rails html5

我有两个带复选框的块。我试图用JS检查这个特定的复选框。

 <%= hidden_field_tag "user[roles][]" %>
    <% User.valid_roles.map{|c| {name: c, id: User.mask_for(c)} }.each do |role| %>
      <%= check_box_tag "user[roles][]", role[:name], user.has_role?(role[:name]), id: "user_role_#{role[:id]}" %>
      <%= label_tag "user_role_#{role[:id]}", role[:name].to_s.titleize %><br/>
      <% end %>




$('#selectAll').click(function() {
   if(this.checked) {
       $(':checkbox').each(function() {
           this.checked = true;                        
       });
   } else {
      $(':checkbox').each(function() {
           this.checked = false;                        
       });
   } 
});

1 个答案:

答案 0 :(得分:0)

这样的事情应该有效:

$('#selectAll').on('change', function(){
  var checkboxes   = $('input[id^="employer_"]');
  var checkedValue = !!this.checked;

  checkboxes.prop('checked', checkedValue);
});

这是一个小提示:http://jsfiddle.net/f5nx0czv/

使用jQuery,您可以集合设置属性/属性,无需迭代集合。