javascript 控制checkbox的全選與全取消
javascript 2008 十二月 21stcheckbox的全選跟全取消
這是js的部份
function checkall(num,maj)
{
var tag = 'dep[' + num +'][]';
var switch_checked = maj.checked;
var len = document.exp_form.elements.length;
for (var i = 0; i < len; i++)
{
if (document.exp_form.elements[i].name == tag)
document.exp_form.elements[i].checked = switch_checked;
}
}
這是html的部份
<form action="#" name="exp_form" method="post"> <input type="checkbox" name="depall0" onclick="checkall(0,this);">全選a<br /> <input name="dep[0][]" type="checkbox" value="a1">a1 <input name="dep[0][]" type="checkbox" value="a2">a2 <input name="dep[0][]" type="checkbox" value="a3">a3 <br /> <input type="checkbox" name="depall1" onclick="checkall(1,this);">全選b<br /> <input name="dep[1][]" type="checkbox" value="b1">b1 <input name="dep[1][]" type="checkbox" value="b2">b2 <input name="dep[1][]" type="checkbox" value="b3">b3 <br /> <input type="checkbox" name="depall2" onclick="checkall(2,this);">全選c<br /> <input name="dep[2][]" type="checkbox" value="c1">c1 <input name="dep[2][]" type="checkbox" value="c2">c2 <input name="dep[2][]" type="checkbox" value="c3">c3 </form>
因為我server端是使用php 所以下面是php處理值的方法
for($_i=0;$_i<3;$_i++)
{
for($_j=0;$_j<count($_POST['dep'][$_i]);$_j++ )
{
echo $_POST['dep'][$_i][$_j];
}
}
這個是可以全選不只一類的
如果只要全選全部的checkbox
就可以再簡化一點囉
可以自己研究看看~
高手跟前輩們鞭小力一點XD
如果有更好的用法希望不吝指教 謝謝~