在批量處理列表數(shù)據(jù)時,往往會用到 CheckBox 的全選與取消全選,雖然她的實現(xiàn)原理很簡單,但是對新手來說還是有些難度,本文介紹的方法,觸發(fā)條件獨立,可以全選或取消全選指定 name 的 CheckBox , 同一頁面可以有多組供全選的 CheckBox ,功能健全,通用性較強。
js
view sourceprint?01 <script type="text/javascript">
02 function checkAll(name) {
03 var el = document.getElementsByTagName('input');
04 var len = el.length;
05 for(var i=0; i<len; i++) {
06 if((el[i].type=="checkbox") && (el[i].name==name)) {
07 el[i].checked = true;
08 }
09 }
10 }
11 function clearAll(name) {
12 var el = document.getElementsByTagName('input');
13 var len = el.length;
14 for(var i=0; i<len; i++) {
15 if((el[i].type=="checkbox") && (el[i].name==name)) {
16 el[i].checked = false;
17 }
18 }
19 }
20 </script>
html
view sourceprint?01 <input type="checkbox" name="test" value="" onclick="if(this.checked==true) { checkAll('test'); } else { clearAll('test'); }" /> 字母全選開關
02 <input type="checkbox" name="test" value="a" /> a
03 <input type="checkbox" name="test" value="b" /> b
04 <input type="checkbox" name="test" value="c" /> c
05 <input type="checkbox" name="test" value="d" /> d
06 <input type="checkbox" name="test" value="e" /> e
07 <input type="checkbox" name="test" value="f" /> f
08 <input type="checkbox" name="test" value="g" /> g
09 <br />
10 <input type="checkbox" name="num" value="" onclick="if(this.checked==true) { checkAll('num'); } else { clearAll('num'); }" /> 數(shù)字全選開關 <input type="checkbox" name="num" value="1" /> 1
11 <input type="checkbox" name="num" value="2" /> 2
12 <input type="checkbox" name="num" value="3" /> 3
13 <br />
14 <br />
15 <input type="button" value="選擇所有的字母" onclick="checkAll('test')" /> <input type="button" value="清空選中的字母" onclick="clearAll('test')" /> <br />
16 <br />
17 <input type="button" value="選擇所有的數(shù)字" onclick="checkAll('num')" /> <input type="button" value="清空選中的數(shù)字" onclick="clearAll('num')" />
更多信息請查看IT技術專欄