点击复选框应该给予警报检查,如果选中并给出警报不检查,如果不是。代码如下:
<input type = "checkbox" id = "all" value="all" /> MyCheckbox
<script src="jquery-2.1.4.js"></script>
<script type="text/javascript">
$("input[type=checkbox]").click(function(){
if ($(this).attr("checked")) {
alert("checked");
}
else{
alert("not checked");
}
});
</script>
最初复选框未被选中。只要我点击它,调试器就会显示它的值为true。现在控件应该输入if {} block,因为它的值是true,但是它的输入是else {} block。 (我正在使用断点)。
为什么会发生这种情况。请帮忙尝试几个小时。
您也可以使用'.prop()'。有关'attr()'和'prop()'之间区别的一个很好的答案可以在这里找到(http://stackoverflow.com/questions/5874652/prop-vs-attr) –
怎么样?你可以使用'.prop(“checked”,true)'来检查复选框是否被选中。 *编辑*:好的,上面的评论被删除。这个评论是针对前一个... –
http://api.jquery.com/prop/甚至有一个例子显示了attr()和prop()之间的区别。 – sinisake