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()); 
});

PS:上面的代码排版比较粗糙,小编这里为省事就不重新排版了,推荐几款排版工具供大家参考使用:

在线JavaScript代码美化、格式化工具:
http://tools.jb51.net/code/js

JavaScript代码美化/压缩/格式化/加密工具:
http://tools.jb51.net/code/jscompress

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

更多关于jQuery相关内容可查看本站专题:《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#niaoge.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。