表单字段需要一个数组
Posted
技术标签:
【中文标题】表单字段需要一个数组【英文标题】:form field needs an array 【发布时间】:2014-11-08 06:11:45 【问题描述】:我会直接进入它。我有一个带有名为“位置”的选择表单元素标记的 html 页面,我编写了一个按钮,以便能够添加另一个选择标记表单字段,以防用户在提交表单时需要指示多个不同的位置。我的问题是我似乎无法添加具有不同name=""
的附加选择表单字段,理想情况下我希望name="location0"
并且当用户再次单击以添加另一个选择表单字段时,它应该是name="location1"
等等...
我用这段代码尝试了 push() 函数:
<button onclick="add_fields()">Try it</button>
<p id="demo"></p>
<script>
var location= ["location"];
document.getElementById("invoice").innerHTML = location;
function add_fields()
location.push("+")
document.getElementById("invoice").innerHTML = location;
</script>
但这也不起作用。我确定这个代码的实现是问题所在。
我在js fiddle 中提供了我的代码,该脚本包含在 html 部分中,仅在 html 部分中有效(奇怪),感谢任何帮助,谢谢。
【问题讨论】:
【参考方案1】:将“location[]”作为选择名称,然后当您通过 $_POST 接收数据时,这将是一个具有不同值的数组。
如果你放这样的东西,你会看到:
<?php
if ($_SERVER['REQUEST_METHOD']==='POST')
echo '<pre>';
print_r($_POST);
echo '</pre>';
//$locationArray=$_POST['location'];
?>
$_POST['location'] 将是一个数组,其中不同位置的不同值
【讨论】:
我走了一条不同的路,但决定给你点时间来回答这个问题,谢谢【参考方案2】:这是我需要做的吗?
if (isset($_REQUEST['location']) && is_array($_REQUEST['location']))
$location = $_REQUEST['location'];
foreach ($locationas $location)
print $location;
【讨论】:
以上是关于表单字段需要一个数组的主要内容,如果未能解决你的问题,请参考以下文章
使用 PHP 从动态输入字段中捕获数组值并通过电子邮件发送它们