动态表单不发布完整数组

时间:2013-01-24 16:17:51

标签: php javascript arrays

如果需要,我正在尝试为用户提供添加多个值的功能。我使用以下JS表单:

<script type="text/javascript"> 
var counter = 1;
var limit = 3;
function addInput(divName){
   if (counter == limit)  {
      alert("You have reached the limit of adding " + counter + " inputs");
   }
   else {
      var newdiv = document.createElement('div');
      newdiv.innerHTML = "Entry " + (counter + 1) + " <br><input type='text' name='myInputs[]' value=''>";
      document.getElementById(divName).appendChild(newdiv);
      counter++;
   }
}
</script>

以下表格:

<form action="add.php" method="post" ENCTYPE="multipart/form-data">
<div id="dynamicInput">Entry 1<br><input type="text" name="myInputs[]"></div>
Enter the POC's number<br>
<input type="button" value="Add another POC" onClick="addInput('dynamicInput');">
<input type="submit" name="Submit" id="Submit" value="Submit">
</form>

如果我将第一个值填充为123而第二个值填充为124,一旦它发布到add.php,我只获得第一个值。我已经确认这些值没有发布(通过print_r($ _ POST);)并通过firebug发布。

Array ( [myInputs] => Array ( [0] => 123 )

任何人都可以找到为什么我会丢失阵列的其余部分吗?

1 个答案:

答案 0 :(得分:1)

您的网站中有表单处理程序,因为数组元素[Submit] =&gt;提交也失败了。在单个php页面上查看它。我认为问题不在这个脚本或这种形式中。