jQuery如何判断checkbox(复选框)是否被选中

谁都知道 在html 如果一个复选框被选中 是 checked="checked"。
但是我们如果用jquery alert($("#id").attr("checked")) 会提示您是true而不是checked
所以很多朋友判断 if($("#id").attr("checked") == "true") 这个是错误的,其实应该是 if($("#id").attr("checked") == true)
下面是使用实例:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="http://www.cnjquery.com/demo/jquery.js"></script>
<script type="text/javascript">
<!--
$(
"document").ready(function(){
$(
"#btn1").click(function(){
$(
"[name='checkbox']").attr("checked",'true');//全选
})
$(
"#btn2").click(function(){
$(
"[name='checkbox']").removeAttr("checked");//取消全选
})
$(
"#btn3").click(function(){
$(
"[name='checkbox']:even").attr("checked",'true');//选中所有奇数
})
$(
"#btn4").click(function(){ //反选
$("[name='checkbox']").each(function(){
if($(this).attr("checked"))
{
$(
this).removeAttr("checked");
}
else
{
$(
this).attr("checked",'true');
}
})
})
$(
"#btn5").click(function(){ //获得选中的所有值
var str="";
$(
"[name='checkbox'][checked]").each(function(){
str
+=$(this).val()+""r"n";
//alert($(this).val());
})
alert(str);
})
})
//-->
</script>
</head>
<body>
<form name="form1" method="post" action="">
<input type="button" id="btn1" value="全选" />
<input type="button" id="btn2" value="取消全选" />
<input type="button" id="btn3" value="选中所有奇数" />
<input type="button" id="btn4" value="反选" />
<input type="button" id="btn5" value="获得选中的所有值" />
<br />
<input type="checkbox" name="checkbox" value="checkbox1" /> checkbox1
<input type="checkbox" name="checkbox" value="checkbox2" /> checkbox2
<input type="checkbox" name="checkbox" value="checkbox3" /> checkbox3
<input type="checkbox" name="checkbox" value="checkbox4" /> checkbox4
<input type="checkbox" name="checkbox" value="checkbox5" /> checkbox5
<input type="checkbox" name="checkbox" value="checkbox6" /> checkbox6
<input type="checkbox" name="checkbox" value="checkbox7" /> checkbox7
<input type="checkbox" name="checkbox" value="checkbox8" /> checkbox8
</form>
</body>
</html>

//************单个checkbox全选************//
function clickCheckbox()
{
if($("#checkPathAll").attr("checked"))
{
$(
"input[name='checkPath']").each(function() {
$(
this).attr("checked", true);
});
}
else
{
$(
"input[name='checkPath']").each(function() {
$(
this).attr("checked", false);
});
}
}
posted @ 2011-03-09 11:27  顺德早茶  阅读(821)  评论(0编辑  收藏  举报