防止出现已禁用的复选框已选中

时间:2011-12-02 19:51:36

标签: jquery

我想将未经检查的输入添加到列表中并使其无法检查。

然后我想设置所有复选框,除非它们被禁用。以下类型的工作,但IE9和FF8(可能所有其他浏览器)显示已禁用的复选框为阴影检查。

如何禁止显示已禁用的复选框?

由于

<script type="text/javascript">
$(document).ready(function(){
    $('#add').click(function(){$('#myList').append($("#clone").clone( true ).removeAttr('id').removeAttr('checked').attr('disabled','disabled'));});
    $('#checkIt').click(function(){$('#myList').find('input').attr('checked','checked');});
});
</script>

</head>
<body>
<input id="clone" type="checkbox" checked="checked" name="whatever" value="">
 <hr />
 <div id="myList">
 <input id="normal" type="checkbox" name="whatever" value="123">
 </div>
<a href="#" id="add">Add</a> 
<a href="#" id="checkIt">Check It</a> 
</body>

1 个答案:

答案 0 :(得分:1)

$('#checkIt').click(function(){$('#myList').find('input:not(:disabled)').attr('checked','checked');});

应该有效。

更一般地说,查看JQuery选择器,它们很棒: http://api.jquery.com/category/selectors/