我有一个全选选项,也是一组复选框的复选框。它运作良好,除了:
如果您点击全选
然后保存
打开表单并单独取消选中几个复选框
然后再次保存
再次打开表单
仍然会检查所有复选框。
只要您不使用全选选项,复选框就会正常保存。
我认为它与rails包含的隐藏字段有关,但我不确定如何解决这个问题。
$('#select_all').change ->
$('.avail-to-order').prop 'checked', $(this).prop('checked')
$('.avail-to-order').change ->
if $(this).prop('checked') == false
$('#select_all').prop 'checked', false
if $('.avail-to-order:checked').length == $('.avail-to-order').length
$('#select_all').prop 'checked', true
<%= f.check_box :id, { class: 'avail-to-order', checked: id_checked}, id, 0 %>