这篇文章主要介绍了jQuery获取复选框被选中数量及判断选择值的方法,结合实例形式分析了jQuery操作复选框进行判定与统计的相关技巧,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了jQuery获取复选框被选中数量及判断选择值的方法。分享给大家供大家参考,具体如下:
获取复选框被选中值
<input type="button" id="btn5" value="获得选中的所有值">
<input type="text" name="dd" id="dd" size="50" />
$("#btn5").click(function(){
var str="";
$("[name='checkbox'][checked]").each(function(){
str+=$(this).val()+",";
})
$("#dd").val(str)
})
JQuery获取被选中复选框checkbox的个数
通过jQuery获取checkbox选中项的个数,需要用到jQuery的size()方法或length属性,下面的例子是通过length属性获得checkbox选中项的个数
<ul>
<li><input type="checkbox" name="test" />看电视</li>
<li><input type="checkbox" name="test" />看电影</li>
<li><input type="checkbox" name="test" />上网</li>
<li><input type="checkbox" name="test" />爬山</li>
<li><input type="checkbox" name="test" />游乐场</li>
<li><input type="checkbox" name="test" />逛街</li>
<li><input type="checkbox" name="test" />聚会</li>
</ul>
<p>
<input type="button" id="count" value="有多少CheckBox被选中了?" />
<script type="text/javascript">
$(document).ready(function(){
$('input[type=checkbox]').click(function(){
$(this).attr('disabled','disabled');
if($("input[name='test']:checked").length >= 3)
{
$("input[name='test']").attr('disabled','disabled');
}
});
$("#count").click(function(){
$('input').live('click',function(){
alert($('input:checked').length);
});
})
})
</script>
效果二(选超过三个做弹窗提示):
<script type="text/javascript">
$('input[type=checkbox]').click(function(){
if($("input[name='test']:checked").length >= 4)
{
$(this).removeAttr("checked");
alert("最多选3个!")}
});
</script>
jquery如何判断checkbox(复选框)是否被选中/全选/返选/取消全选:
在html 如果一个复选框被选中 是 checked="checked"。
但是我们如果用jquery alert($("#id").attr("checked")) 会提示您是true而不是checked
所以很多朋友判断:
if($("#id").attr("checked")=="true")
这个是错误的,其实应该是:
if($("#id").attr("checked")==true)
例子里面包括了一下几个功能。
<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="获得选中的所有值">
代码
<script src="js/jquery-1.6.min.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(function($){
//全选
$("#btn1").click(function(){
$("input[name='checkbox']").attr("checked","true");
})
//取消全选
$("#btn2").click(function(){
$("input[name='checkbox']").removeAttr("checked");
})
//选中所有基数
$("#btn3").click(function(){
$("input[name='checkbox']:even").attr("checked","true");
})
//选中所有偶数
$("#btn6").click(function(){
$("input[name='checkbox']:odd").attr("checked","true");
})
//反选
$("#btn4").click(function(){
$("input[name='checkbox']").each(function(){
if($(this).attr("checked"))
{
$(this).removeAttr("checked");
}
else
{
$(this).attr("checked","true");
}
})
})
//或许选择项的值
var aa="";
$("#btn5").click(function(){
$("input[name='checkbox']:checkbox:checked").each(function(){
aa+=$(this).val()
})
document.write(aa);
})
})
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="button" id="btn1" value="全选">
<input type="button" id="btn2" value="取消全选">
<input type="button" id="btn3" value="选中所有奇数">
<input type="button" id="btn6" 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
</div>
</form>
jquery 循环读取checkbox值
$("input[type=checkbox][checked]").each(function(){
//由于复选框一般选中的是多个,所以可以循环输出
alert($(this).val());
});
希望本文所述对大家jQuery程序设计有所帮助。