我有一个表单,可以在我的网页上动态添加带有表单字段的行。一行表单字段由文本框和多个选择列表组成。来自此处的教程来源:http://viralpatel.net/blogs/2009/03/dynamically-add-remove-rows-in-html-table-using-javascript.html
我的文本框的代码是:
<input type="textbox" name="name[]" id="name" size="20" maxlength="50" />
我的多选列表的代码是:
<select name="friend[]" multiple size="4" id="friend" style="width:150px" >
<option value="none" selected="selected">None</option>
<option value="sam">Sam</option>
<option value="jenny">Jenny</option>
<option value="bob">Bob</option>
<option value="aaron">Aaron</option>
</select>
我正在使用Javascript生成两个字段的多行,并且所有行共享相同的名称。我在获取不同行的名称方面没有问题,因为名称[0] =名称at第一行,名称[1] =第二行的名称,依此类推。但我无法分辨用户从每行的多个列表框中选择了多少。
如果用户从第一行中选择“无”,在第二行选择“Sam and Bob”并仅在第三行选择“Aaron”,则friend数组将显示线性结果,其中friend [0] = none ,朋友[1] =山姆,朋友[2] =鲍勃,朋友[3] =亚伦。
如何判断用户使用HTML或PHP或Javascript为每个多个列表框选择的值?
提前致谢!
答案 0 :(得分:0)
枚举字段,然后按预期工作。
<select name="friend[1][]"
<select name="friend[2][]"
<select name="friend[3][]"
var_dump($_POST);
array(3) {
["name"]=>
array(3) {
[0]=>
string(2) "aa"
[1]=>
string(2) "bb"
[2]=>
string(2) "cc"
}
["friend"]=>
array(3) {
[1]=>
array(1) {
[0]=>
string(4) "none"
}
[2]=>
array(2) {
[0]=>
string(3) "sam"
[1]=>
string(3) "bob"
}
[3]=>
array(1) {
[0]=>
string(5) "aaron"
}
}
["submit"]=>
string(4) "send"
}