复选框在编辑页面中不起作用

时间:2013-08-09 07:00:19

标签: javascript jquery ruby-on-rails ruby

select all复选框在初始时间运行良好。 脚步: 1.考虑我检查一些复选框或选中所有复选框,然后保存表格 2.编辑保存的表单显示没有检查。它显示了初始阶段的复选框。什么都没有保存。

的Javascript

<%= check_box_tag "box_select_all" %>

<%= check_box_tag "box_id[]", box.id, false, class: 'box_select' %>

的jQuery

$('body').delegate('#box_select_all', 'click', function() {
  $('.box_select').prop('checked', this.checked);
});


$('body').delegate('.box_select', 'click', function() {
  if ($(".box_select").length == $(".box_select:checked").length) {
    $("#box_select_all").prop("checked", "checked");
  } else {
  $("#box_select_all").prop("checked", false);
  }
});

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

为什么要在主体上委托该功能,当您单击复选框时,将调用该功能。这样称呼:

$("#box_select_all").click(function() {
  $(".box_select").prop('checked', this.checked);
});

$(".box_select").click(function() {
  if ($(".box_select").length == $(".box_select:checked").length) {
    $("#box_select_all").prop("checked", "checked");
  } 
  else {
  $("#box_select_all").prop("checked", false);
  }
});

希望它能奏效。

答案 1 :(得分:1)

$("#select_all").click(function){
   $(".select_class").attr("checked",true);

});

这意味着您只需在所有复选框中添加相同的类,并在其onclick函数的复选框all复选框上执行此代码。 gud luck