好的,我很难过,在这段代码中查看超过3个小时。
我生成一系列复选框,如下所示:
<?php
while($row=mysql_fetch_array($result)){
// here generate some more html...
echo '<table><tr><td><input type="checkbox" name ="ordered" onchange="checked()"/></td></tr>'
echo "</table>";
?>
我有两个这样的js函数:
<head>
<script>
function removeDuplicateElement(arrayName){
var newArray=new Array();
label:for(var i=0; i<arrayName.length;i++ ){
for(var j=0; j<newArray.length;j++ ){
if(newArray[j]==arrayName[i])
continue label;
}
newArray[newArray.length] = arrayName[i];
}
return newArray;
}
var array = new Array();
function checked(){
var chkOrd = document.myForm.ordered;
for (i=0; i < chkOrd.length; i++){
if(chkOrd.checked){
array.push(chkOrd[i]);
//document.myForm.hid.value =chkOrd[i].value;
document.myForm.hid.value += removeDuplicateElement(array);
//alert("kliknuto je na " + array[1]);
}
}
}
</script>
</head>
当我用以下信息将信息发布到php:
$hid = $_POST['hid'];
echo $hid;
我总是得到空数组,就像没有复选框传递给php一样。我知道php只发送已选中的复选框,但即使有复选框,我的数组也是空的......我认为生成的复选框有一些问题,因为我甚至无法获得单项复选框数组。
提前谢谢你......