Я получу прямо в это. У меня есть HTML-страница с тегом элемента формы выбора с именем «location», и я закодировал кнопку, чтобы можно было добавить еще одно поле формы тега select на тот случай, если при отправке формы пользователям потребуется указать несколько разных местоположений. Моя проблема в том, что я не могу добавить дополнительное поле выбора формы с другим 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 (странно), любая помощь приветствуется, спасибо.
Поставьте «location []» в качестве имени для выбора, а затем, когда вы получите данные через $ _POST, это будет массив с различными значениями.
Если вы поставите что-то вроде этого, вы увидите, что:
<?php
if ($_SERVER['REQUEST_METHOD']==='POST') {
echo '<pre>';
print_r($_POST);
echo '</pre>';
//$locationArray=$_POST['location'];
}
?>
$ _POST [‘location’] будет массивом с разными значениями в разных позициях
Это то, что мне нужно сделать?
if (isset($_REQUEST['location']) && is_array($_REQUEST['location'])) {
$location = $_REQUEST['location'];
foreach ($locationas $location) {
print $location;
}
}