Javascript 已禁用复选框(Jquery)

Javascript 已禁用复选框(Jquery),javascript,checkbox,client-side,Javascript,Checkbox,Client Side,目的是, 如果复选框被禁用,则不执行任何操作。 如果复选框已启用并选中,则设置按钮的样式。 这是我到目前为止得到的 $(document).ready(function (e) { $(".checkbox").live("click", function () { if ($(this).hasAttribute('disabled')) { return false; }

目的是,
如果复选框被禁用,则不执行任何操作。
如果复选框已启用并选中,则设置按钮的样式。
这是我到目前为止得到的

 $(document).ready(function (e) {


        $(".checkbox").live("click", function () {

            if ($(this).hasAttribute('disabled')) {
                return false;
            }
            var isAnyChecked;

            $("input[type=checkbox]").each(function () {
                var checkedValue = $(this).attr("checked");
                if (checkedValue == "checked") {
                    isAnyChecked = true;
                }


            });

            if (isAnyChecked) {
                $("#<%= btnConfirm.ClientID %>").css("display", "block");

            } else {
                $("#<%= btnConfirm.ClientID %>").css("display", "none");

            }


        });  });
$(文档).ready(函数(e){
$(“.checkbox”).live(“单击”,函数(){
if($(this).hasAttribute('disabled')){
返回false;
}
var isAnyChecked;
$(“输入[type=checkbox]”)。每个(函数(){
var checkedValue=$(this.attr(“checked”);
如果(checkedValue==“已检查”){
isAnyChecked=true;
}
});
如果(已选中){
$(“#”)css(“显示”、“块”);
}否则{
$(“#”)css(“显示”、“无”);
}
});  });
我尝试了
.is(':disabled')
.hasAttr()
.prop()
.attr()
。非常感谢您的帮助。

您必须检查
disabled
属性是否正确:
.attr('disabled')

或者,最好使用
.is(':disabled')
---


编辑:因此,
.attr
现在似乎不推荐用于此用途(请参阅) 首选的方式是:

$('#myCheckbox').prop('disabled')
必须注意的是,到今天为止,这仍然有效:

$('#myCheckbox').is(':disabled')

请在此处尝试:

您也可以尝试使用:

$("#myCheckBox").is('[disabled]');

我可以确定一个元素是否被禁用,而其他解决方案(
.disabled
是(“:disabled”)
.attr('disabled')
.prop('disabled')
)不是。

对于初学者来说,
.live
是不推荐的,应该为
打开时关闭。
否,您必须检查属性:
.prop('disabled')
我也尝试过(“change”,功能和未检查功能被完全禁用。这不起作用。道具起作用,但在加载页面时不起作用。问题是,页面中的网格在加载时selectedindex设置为0。当我在组合框中选择其他内容时,会列出新项目,然后显示按钮。但在加载页面时,道具第一次不起作用。我已经更改了检查后面的代码没有任何错误。我在
.attr
上犯了一个错误,但它是固定的。此外,我测试了3种解决方案(
.attr
.is
.prop
),它们都能工作。