先上代碼
<form> 你愛好的運動是?<br/> <input type="checkbox" name="items" value="足球" />足球 <input type="checkbox" name="items" value="籃球" />籃球 <input type="checkbox" name="items" value="羽毛球" />羽毛球 <input type="checkbox" name="items" value="乒乓球" />乒乓球 <br/> <input type="button" id="CheckAll" value="全選" /> <input type="button" id="CheckNo" value="全不選" /> <input type="button" id="CheckRev" value="反選" /> </form>
想要實現的是全選,全不選和反選三種效果,其中需要特別注意的是全選按鈕這里
<script> $(function(){ $("#CheckAll").click(function(){ $("input:checkbox").prop("checked","checked"); }); $("#CheckNo").click(function(){ $("input:checkbox").removeAttr("checked"); }); $("#CheckRev").click(function(){ $("input:checkbox").each(function(){ this.checked=!this.checked; }); }); }); </script>
請注意,現在使用的是prop(),如果使用attr(),那么就會出現下面這種情況:
選擇“全選”按鈕后,正常;點擊“全不選”,正常;當這個時候再去點擊“全選”按鈕時,發現代碼那里的“checked”=checked,但是頁面上沒有顯示出來;
使用prop()方法后,可以解決此問題;
。。。。沒有測瀏覽器的兼容。。。。