获取复选框被选中值
<input type="button" value="获得选中的所有值"> <input type="text" 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" />看电视</li> <li><input type="checkbox" />看电影</li> <li><input type="checkbox" />上网</li> <li><input type="checkbox" />爬山</li> <li><input type="checkbox" />游乐场</li> <li><input type="checkbox" />逛街</li> <li><input type="checkbox" />聚会</li> </ul> <p> <input type="button" 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" value="全选"> <input type="button" value="取消全选"> <input type="button" value="选中所有奇数"> <input type="button" value="反选"> <input type="button" value="获得选中的所有值">
代码
<script src="https://www.jb51.net/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 runat="server"> <div> <input type="button" value="全选"> <input type="button" value="取消全选"> <input type="button" value="选中所有奇数"> <input type="button" value="选中所有偶数"> <input type="button" value="反选"> <input type="button" value="获得选中的所有值"> <br> <input type="checkbox" value="checkbox1"> checkbox1 <input type="checkbox" value="checkbox2"> checkbox2 <input type="checkbox" value="checkbox3"> checkbox3 <input type="checkbox" value="checkbox4"> checkbox4 <input type="checkbox" value="checkbox5"> checkbox5 <input type="checkbox" value="checkbox6"> checkbox6 <input type="checkbox" value="checkbox7"> checkbox7 <input type="checkbox" value="checkbox8"> checkbox8 </div> </form>
jquery 循环读取checkbox值
$("input[type=checkbox][checked]").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出 alert($(this).val()); });
PS:上面的代码排版比较粗糙,小编这里为省事就不重新排版了,推荐几款排版工具供大家参考使用: