1

我正在使用 Javascript 来允许用户检查表单中的所有项目。但是,即使它们被禁用,它也会检查项目。有没有办法让它只对启用的复选框起作用?

    <script>
    $(document).ready(function () {
        $('#selectall').on('click', function () {
            $('.lv').prop('checked', isChecked('selectall'));
        });
    });
    function isChecked(checkboxId) {
        var id = '#' + checkboxId;
        return $(id).is(":checked");
    }
    function resetSelectAll() {
        // if all check box are selected, check the selectall checkbox
        // and vice versa
        if ($(".lv").length == $(".lv:checked").length) {
            $("#selectall").attr("checked", "checked");
        } else {
            $("#selectall").removeAttr("checked");
        }

        if ($(".lv:checked").length > 0) {
            $('#edit').attr("disabled", false);
        } else {
            $('#edit').attr("disabled", true);
        }
    }
    </script>
4

1 回答 1

7

您可以组合:not():disabled选择器:

$(".lv:not(:disabled)").prop("checked", isChecked("selectall"));
于 2013-07-30T17:23:58.530 回答