我有一个html表单,它位于input type="number"
,并使用javascript设置div中input
的数量,每个都有一个唯一的名称:item1
,{ {1}} ...
我目前正在尝试在一个php数组中设置输入的值,然后循环以获取内容,但是item2
不会打印任何内容。
echo $item
如果有帮助,这是我的html表单和javascript:
$items = array();
if (isset($_POST['num'])) {
for ($i = 1; $i <= intval($_POST['num']); $i++) {
array_push($items, $_POST['item' + $i]);
}
foreach ($items as $item) {
echo $item;
}
}
JS:
How many Items: <input min="1" max="5" type="number" onchange="updateInput(this.value, document.getElementById('itemSpace'), 1, 5)" name="num"/>
Enter the items: <div id="itemSpace" name="itemSpace"></div>
答案 0 :(得分:0)
尝试类似
的内容if (isset($_POST['num'])) {
foreach ($_POST['num'] as $key => $num) {
$items[] = $_POST['item' + $key]
}
}
如果设置了$ _POST [&#39; num&#39;],则会调用foreach,您可以将其转换为$ key =&gt; $ value,所以你得到你以后可以使用的$ key。
您有使用array_push
的原因吗?如果您只想将一个元素添加到数组中,还可以键入$ arrayName [] =&#39; ...&#39;。