如何在javascript中传递动态数组?

如何在javascript中传递动态数组?,javascript,ajax,Javascript,Ajax,我已经使用php动态加载了checkbox的值,在该页面中使用AJAX调用处理页面 <form name="form1" id="form1" action="javascript:wait1();getPass('go.php?**place**='+ document.form1.place.value);" method="post" enctype="multipart/form-data"> <input name="place[]" type="checkbox

我已经使用php动态加载了checkbox的值,在该页面中使用AJAX调用处理页面

<form name="form1" id="form1" action="javascript:wait1();getPass('go.php?**place**='+ document.form1.place.value);" method="post" enctype="multipart/form-data">


<input name="place[]" type="checkbox" value="<?=$ro['article_title']?>" /><?=$ro['article_title']?>
由于复选框由数组组成,因此我无法获取值

请帮忙

提前感谢。

引用:

ID和名称标记必须以字母[a-Za-z]开头,并且可以是 后跟任意数量的字母, 数字[0-9],连字符-, 下划线_,冒号:,和 句号


因此,[和]在name属性中无效。

使用数组样式访问表单的属性,如form1['place[]'。由于这是一个复选框,可以选择多个值,form1['place[]']将返回一个节点列表。您可以通过遍历列表来构建URL:

var places = document.form1['place[]'];

var checked_places = [];
for (var i = 0, l = places.length; i < l; i++) {
    if (places[i].checked) {
        checked_places.push('place[]=' + places[i].value);
    }
}
var url = "go.php?" + checked_places.join('&');
请参见一个实例:


但为什么会这样呢?既然您正在发布表单,为什么不通过服务器端的$\u POST读取值呢?

我不明白这个问题。。。复选框值是一个数组?复选框是根据数据库值生成的,位于while循环内。因此,我在数组中将其名称定义为place[]。现在,当我在javasript中放置[]时。。。它不起作用。但当您使用PHP作为服务器端语言来指示应创建一个值数组时,通常会使用它们: