使用jQuery选择所有复选框

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (26)

我需要jQuery选择器的帮助。假设我有一个标记,如下所示:

<form>
    <table>
        <tr>
            <td><input type="checkbox" id="select_all"/></td>
        </tr>
        <tr>
            <td><input type="checkbox" name="select[]"/></td>
        </tr>
        <tr>
            <td><input type="checkbox" name="select[]"/></td>
        </tr>
        <tr>
            <td><input type="checkbox" name="select[]"/></td>
        </tr>
    </table>
</form>

当用户点击它的时候如何获得除其他外的所有复选框#select_all

提问于
用户回答回答于

在您的情况下,一个更完整的示例应该有效:

$('#select_all').change(function() {
    var checkboxes = $(this).closest('form').find(':checkbox');
    checkboxes.prop('checked', $(this).is(':checked'));
});

#select_all单击复选框,选中复选框的状态,并将当前窗体中的所有复选框设置为相同的状态。

注意,不需要排除#select_all复选框中的选择,因为这将具有相同的地位。如果你出于某种原因需要排除#select_all,你可以用这个:

var checkboxes = $(this).closest('form').find(':checkbox').not($(this));
用户回答回答于
$('#select_all').click(function() {
    var c = this.checked;
    $(':checkbox').prop('checked',c);
});

扫码关注云+社区

领取腾讯云代金券