本篇文章是關於複選框的,有2種形式:1、全選、反選由2個按鈕實現;2、全選、反選由一個按鈕實現。
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>复选框demo</title> <script src="../js/jquery-1.10.2.js" type="text/javascript"></script> <style> body{ text-align:center} .con{ margin:100px auto; width:800px; height:400px; border:1px solid #F00; padding-top: 50px;} </style> </head> <body> <p class="con"> <span><input type='checkbox' name='select' onclick='allSelect()'>全选</span> <span><input type='checkbox' name='cancel' onclick='unAllSelect()'>反选</span> <span><input type='checkbox' name='fruit' />苹果</span> <span><input type='checkbox' name='fruit' />香蕉</span> <span><input type='checkbox' name='fruit' />梨子</span> <span><input type='checkbox' name='fruit' />桃子</span> <span><input type='checkbox' name='fruit' />西瓜</span> <br><br><br> <span><input type='checkbox' id="allBook" name='allBook' />全选</span> <span><input type='checkbox' name='book' />老子</span> <span><input type='checkbox' name='book' />尚书</span> <span><input type='checkbox' name='book' />周易</span> <span><input type='checkbox' name='book' />诗经</span> <span><input type='checkbox' name='book' />孟子</span> <span><input type='checkbox' name='book' />中庸</span> <script type="text/javascript"> //全选 function allSelect(){ $("input[name='fruit']").prop("checked", "checked"); $("input[name='cancel']").removeAttr("checked"); } //反选 function unAllSelect(){ $("input[name='fruit']").removeAttr("checked"); $("input[name='select']").removeAttr("checked"); } //单选 $("#allBook").click(function(){ if(this.checked){// $("input[name='book']").attr("checked", true); $("input[name='book']").prop("checked", "checked"); }else{// $("input[name='book']").attr("checked", false); $("input[name='book']").removeAttr("checked"); } });</script> </p> </body> </html>
在實務上碰到一個問題-check全選失效。解決辦法,使用prop方法代替attr。
$("input[name='book']").attr("checked", "checked"); $("input[name='book']").prop("checked", "checked");
這或許是和jQuery版本有關。
以上是js複選框全選反選的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!