在批量處理列表數據時,往往會用到 CheckBox 的全選與取消全選,雖然她的實現原理很簡單,但是對新手來說還是有些難度,本文介紹的方法,觸發條件獨立,可以全選或取消全選指定 name 的 CheckBox , 同一頁面可以有多組供全選的 CheckBox ,功能健全,通用性較強。
<input type="checkbox" name="test" value="" onclick="if(this.checked==true) { checkAll('test'); } else { clearAll('test'); }" />
字母全選開關
<input type="checkbox" name="test" value="a" /> a
<input type="checkbox" name="test" value="b" /> b
<input type="checkbox" name="test" value="c" /> c
<input type="checkbox" name="test" value="d" /> d
<input type="checkbox" name="test" value="e" /> e
<input type="checkbox" name="test" value="f" /> f
<input type="checkbox" name="test" value="g" /> g
<br />
<input type="checkbox" name="num" value="" onclick="if(this.checked==true) { checkAll('num'); } else { clearAll('num'); }" />
數字全選開關
<input type="checkbox" name="num" value="1" /> 1
<input type="checkbox" name="num" value="2" /> 2
<input type="checkbox" name="num" value="3" /> 3
<br /><br /> <input type="button" value="選擇所有的字母" onclick="checkAll('test')" />
<input type="button" value="清空選中的字母" onclick="clearAll('test')" />
<br /><br />
<input type="button" value="選擇所有的數字" onclick="checkAll('num')" />
<input type="button" value="清空選中的數字" onclick="clearAll('num')" />
<script type="text/javascript">
// 說明:Javascript 控制 CheckBox 的全選與取消全選
function checkAll(name) {
var el = document.getElementsByTagName('input');
var len = el.length; for(var i=0; i<len; i++) {
if((el[i].type=="checkbox") && (el[i].name==name)) {
el[i].checked = true;
}
}
}
function clearAll(name) {
var el = document.getElementsByTagName('input');
var len = el.length;
for(var i=0; i<len; i++) {
if((el[i].type=="checkbox") && (el[i].name==name)) {
el[i].checked = false;
}
}
}
</script>
posted on 2007-11-22 22:46
末日風情 閱讀(955)
評論(1) 編輯 收藏 所屬分類:
javascript