#javascript #php #jquery #html
#javascript #php #jquery #HTML
Вопрос:
У меня есть один выпадающий список, одно текстовое поле и одна кнопка в PHP и HTML. Я могу получить значение выбранного значения выпадающего списка, а также значение текстового поля нажатием кнопки. Вот мой index.html
:
<html>
<head>
<title></title>
</head>
<body>
<form action="function.php" method="post">
<!-- here start the dropdown list -->
<div id="mainContainer">
<select name="dowpdown">
<option value="String">String</option>
<option value="Number">Number</option>
</select>
Enter first number <input type="text" name="fnum"/><hr/>
<input type="submit" name="show_dowpdown_value" value="show"/>
</div>
</form>
<?php include("function.php"); ?>
</body>
</html>
Вот мой function.php
код:
<?php
// here starts the php
if (isset($_POST['show_dowpdown_value'])) {
echo $_POST['dowpdown']; // this will print the value if downbox out
$x=$_POST['fnum'];
echo $_POST['fnum'];
}
?>
Теперь я добавил еще одну кнопку, которая будет генерировать один выпадающий список и одно текстовое поле при каждом нажатии. Вот мой код :
<table>
<tr>
<td><button type="button" onClick ="addRow(this)">Add</button></td>
</tr>
</table>
<script type="text/javascript">
function addRow(btn) {
var parentRow = btn.parentNode.parentNode;
var table = parentRow.parentNode;
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "text";
cell1.appendChild(element1);
var cell3 = row.insertCell(1);
//var element2 = document.createElement("input");
var element2 = document.createElement("select");
//element2.type = "select";
var option1 = document.createElement("option");
option1.innerHTML = "Option1";
option1.value = "1";
element2.add(option1, null);
var option2 = document.createElement("option");
option2.innerHTML = "Option2";
option2.value = "2";
element2.add(option2, null);
cell3.appendChild(element2);
}
</script>
Он отлично генерирует выпадающий список и текстовое поле. Но я не могу получить значения из сгенерированного выпадающего списка и текстового поля. Нужна помощь, чтобы получить значения из всех выпадающих списков и текстовых полей одним нажатием кнопки.
Комментарии:
1. Вам нужно добавить
name
свойство к HTML-элементам, которые вы создаете во время выполнения, и использовать это имя для чтения его данных в PHP.2. Я изменил скрипт следующим образом — element1.name = «fnum»; element2.name = «dowpdown» Возвращает только значение последнего выпадающего списка и текстового поля.
3. Это ожидаемое поведение. Для получения всех значений
name
должно быть уникальным. Например,fnum1
,fnum2
и т.д.4. Или преобразовать имена в массив и перебирать их в цикле
5. Поскольку невозможно угадать, сколько раз пользователь нажмет на кнопку, трудно установить уникальное имя для каждого. Как сделать имена массивом и перебирать их в цикле? Любой пример кода, пожалуйста.