如果一组checkbox:
<form name="aform" method="post" onsubmit="return check()">
<input type="checkbox" name="test[]" id="test1" value="aaaaaa" /><label for="test1">aaaaaa</label>
<input type="checkbox" name="test[]" id="test2" value="bbbbbb" /><label for="test2">bbbbbb</label>
<input type="checkbox" name="test[]" id="test3" value="ccccccc" /><label for="test3">ccccccc</label>
<input type="checkbox" name="test[]" id="test4" value="dddddd" /><label for="test4">dddddd</label>
<input type="checkbox" name="test[]" id="test5" value="eeeeee" /><label for="test5">eeeeee</label>
</form>

注意表单名在这里使用的是:aform
在ASP,你可以直接使用Request("test")来取得这一串被选中的checkbox的值,注意这时这些checkbox的name="test",ASP会直接得到aaaaaa,bbbbbb,cccccc,dddddd,eeeeee这一形式的值;
但是在PHP中,如果使用name="test",用$_POST['test']得到的只有第一个checkbox的值aaaaaa,因此我们为了方便取值,将它改装成数组形式:test[],此时,就需要遍历这个数组的元素。

由于在PHP使用遍历方式来取这些checkbox的值:
$testValue = '';
if(count($_POST['test'])>0) {
    for($i=0;$i<count($_POST['test']);$i++) {
        $testValue .= $_POST['test'][$i];
        if($i+1 < count($_POST['test'])) {
            $testValue .= ',';
        }
    }
}

用javascript怎么来取呢?这样:
function getValue(strElement)
{
    var s = '';
    for (var i=0; i<document.aform[strElement].length; i++)
    {
        if (document.aform[strElement][i].checked)
        {
            s += document.aform[strElement][i].value + ',';
        }
    }
    return s;
}
//strElement与上述对应的应该就是:test[]
//也就是在check()校验函数中使用这样的方式:getValue('test[]')

当从数据库中取出数据,使checkbox自动选中的时候这样做:
function SelectedElement(strElement,strValue)
{
    var B = strValue;
    for (i=0;i<document.aform[strElement].length ;i++)
    {
        tmpB = B.split(",");
        for (j=0;j<tmpB.length ;j++ )
        {
            if(tmpB[j]==document.aform[strElement][i].value)
            {
                document.aform[strElement][i].checked=true;
                break;
            }
        }
    }
}
//同样道理,SelectedElement('test[]','<?=$testValue?>')