您好,登錄后才能下訂單哦!
以下是用原生js實現的復選框全選/反選的實現,選中checkbox的時候,實現全選的效果,并且樣式發生改變。
代碼最簡潔,js行為優化版,復制粘貼即可使用。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>復選框全選/反選效果實現</title> <style> body,dl,dt,dd,p{margin:0;padding:0;} body{font-family:Tahoma;font-size:12px;} label,input,a{vertical-align:middle;} label{padding:0 10px 0 5px;} a{color:#09f;text-decoration:none;} a:hover{color:red;} dl{width:120px;margin:10px auto; border-radius:5px;background:#fafafa;} dt{padding-bottom:10px; border-bottom:1px solid #666;} dt label{font-weight:700;} p{margin-top:10px;} </style> </head> <body> <dl> <dt><input type="checkbox" id="checkAll" /><label>全選</label><a href="javascript:;">反選</a></dt> <dd> <p><input type="checkbox" name="item" /><label>選項(一)</label></p> <p><input type="checkbox" name="item" /><label>選項(二)</label></p> <p><input type="checkbox" name="item" /><label>選項(三)</label></p> <p><input type="checkbox" name="item" /><label>選項(四)</label></p> <p><input type="checkbox" name="item" /><label>選項(五)</label></p> <p><input type="checkbox" name="item" /><label>選項(六)</label></p> <p><input type="checkbox" name="item" /><label>選項(七)</label></p> <p><input type="checkbox" name="item" /><label>選項(八)</label></p> <p><input type="checkbox" name="item" /><label>選項(九)</label></p> <p><input type="checkbox" name="item" /><label>選項(十)</label></p> </dd> </dl> <script type="text/javascript"> (function(){ var aInput = document.getElementsByTagName("input"); var aBack = document.getElementsByTagName("a")[0]; var aLabel = document.getElementsByTagName("label")[0]; var allInput = aInput[0]; //全選設置,當點擊事件發生時候,如果被選擇全部選中,并且文本內容改變 allInput.onclick=function(){ if(aInput[0].checked){ for(var i=1;i<aInput.length;i++){ aInput[i].checked = true; } aLabel.innerHTML = "全不選"; } else{ for(var i=1;i<aInput.length;i++){ aInput[i].checked = false; } aLabel.innerHTML = "全選"; } } //反選設置,選中的內容是原本內容的取反 aBack.onclick=function(){ for(var i=1;i<aInput.length;i++){ aInput[i].checked = !aInput[i].checked; } } })(); </script> </body> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。