当勾选复选框时,alertBox不显示
我在代码中看不到任何错误。但是,当复选框打勾时,Alertbox不显示。当勾选复选框时,alertBox不显示
有没有人可以帮助我?提前致谢。
<script type="text/javascript" language="javascript" src="jquery/jquery-1.4.4.min.js"></script>
<script type="text/javascript" language="javascript">
$(function(){
if($("#checkkBoxId").attr("checked"))
{
alert("Checked");
}
else
{
alert("Unchecked");
}
});
</script>
</head>
<body>
<p><input id="checkkBoxId" type="checkbox">Enable</p>
</body>
你需要点击事件上的复选框绑定像
$("#checkkBoxId").click(function() {
if($(this).attr("checked")) {
alert("Checked");
}
else {
alert("Unchecked");
}
}):
使用'prop'而不是'attr'。 – ThiefMaster
除非您的版本号为1.6 @ThiefMaster,您可以在代码 –
中看到'.change()'更适合这种情况。用户可以使用keybord而不是鼠标来更改'checked'属性。 – pltvs
你要的功能附加到复选框的click事件。
$("#checkkBoxId").change(function(){
if($(this).prop("checked"))
{
alert("Checked");
}
else
{
alert("Unchecked");
}
});
使用'prop'而不是'attr'。此外,您在第一行中忘记了一些引号。 – ThiefMaster
好的,我改变了它。谢谢:) –
'.change()'更适合这种情况。用户可以使用keybord而不是鼠标来更改'checked'属性。 – pltvs
$(document).ready(function() {
$('#checkkBoxId').change(function() {
if ($(this).prop('checked')) {
alert('checked');
} else {
alert('not checked');
}
});
});
使用'prop('checked')'比'is(':checked')'快。 – ThiefMaster
+1为唯一正确/正确的答案到目前为止! –
-1因为没有看到曼纽尔做了什么,也没有看到除了你的其他答案以外的其他答案。 – Blazemonger
你的代码执行恰好一次当DOM已准备就绪。所以任何更改都不会触发它。
这里的妥善解决:
$(function() {
$('#checkkBoxId').change(function() {
if ($("#checkkBoxId").prop('checked')) {
alert("Checked");
} else {
alert("Unchecked");
}
});
});
你真的需要使用jQuery的一个古老的版本? 1.6.4是最近的版本,在这个版本中你可以使用'.prop()',这对于获取检查状态更快更舒适。 – ThiefMaster