刷新后取消选中复选框

时间:2015-04-18 12:19:14

标签: javascript checkbox erb

我的页面上有复选框,所有这些都是默认值。但是,在页面刷新后取消选中select_all复选框,而其他复选框仍保持选中状态。



<script>
	var $checked = true;
	$('#select_all').click(function() {
		console.log('click select all button'+$checked)
		$checked = !$checked
		$(".activated").each(function(){
			$(this).prop("checked", $checked)
		});
	});
</script>
&#13;
<table cellspacing="10">
	    <thead>
		    <tr>
					<%= check_box_tag 'select_all', 1, true%>
					<%= label_tag :select_all, " Select All Doctors" %>
				</tr>
	   </thead>
	   <tbody>
		   <tr>
				 <th>Send Email</th>
			   <th>First Name</th>
			   <th>Last Name</th>
			   <th>Email</th>
		   <% @doctors.each do |doctor| %>
			 <tr>
         <td><%= check_box_tag 'activated[]', doctor.id, true, class: 'activated'%></td>
				 <td><%= doctor.first_name %></td>
				 <td><%= doctor.last_name %></td>
				 <td><%= doctor.email %></td>
			 </tr>
		   <% end %>
	   </tbody>
</table>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您不必保存布尔值来切换,您可以执行以下操作:

<script>
    $('#select_all').change(function() {
      console.log('click select all button'+$checked)
      $checked = $(this).is(':checked')
      $(".activated").each(function(){
        $(this).prop("checked", $checked)
      });
    });
</script>

N.T用更改替换了click,这是与复选框一起使用的合适选项。