您通常可以使用以下内容:
<form action="example.php" method="POST">
<input type="text" name="file_name[]">
<input type="text" name="file_name[]">
<input type="text" name="file_name[]">
以相同名称收集数据,并在PHP中访问它,如:
$file_name = $_POST["file_name"];
echo $file_name[0]; //first occurrence
echo $file_name[2]; //third occurrence
但是当使用jQuery生成动态字段时,就像这样:
$("#example_table").append("<tr><td><input type="text" name="file_name[]"></td></tr>");
并在POST表单中使用标准提交按钮提交,结果有所不同。只传递最后一个匹配项,但数组索引表示上述连续字母,而不是精确的指示字段。
问题是,为什么以及如何解决它?
答案 0 :(得分:1)
您必须从html字符串中删除另一个双引号。你有两种方法
1. $("#example_table").append("<tr><td><input type=\"text\" name=\"file_name[]\"></td></tr>");
2. $("#example_table").append('<tr><td><input type="text" name="file_name[]"></td></tr>');
也许这会有所帮助。
答案 1 :(得分:0)
您可以使用single quote
代替double quote
file_name
。这可能对你有用。
$("#example_table").append("<tr><td><input type='text' name='file_name[]'></td></tr>");
答案 2 :(得分:0)
所以,问题解决了。这完全是关于使用双引号而不是单引号。感谢您的参与和支持。