一个更完整的示例适用于您的情况:
$('#select_all').change(function() {
var check@R_805_2419@es = $(this).closest('form').find(':check@R_805_2419@');
check@R_805_2419@es.prop('checked', $(this).is(':checked'));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
<table>
<tr>
<td><input type="check@R_805_2419@" id="select_all" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
</table>
</form>
当#select_all
被点击复选框,该复选框的状态进行检查,并在当前形式的所有复选框被设置为相同的状态。
请注意,您无需#select_all
从选择中排除该复选框,因为该复选框的状态将与其他所有复选框相同。如果出于某些原因确实需要排除#select_all
,则可以使用以下方法:
$('#select_all').change(function() {
var check@R_805_2419@es = $(this).closest('form').find(':check@R_805_2419@').not($(this));
check@R_805_2419@es.prop('checked', $(this).is(':checked'));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
<table>
<tr>
<td><input type="check@R_805_2419@" id="select_all" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
<tr>
<td><input type="check@R_805_2419@" name="select[]" /></td>
</tr>
</table>
</form>