Я динамически добавляю текстовое поле всякий раз, когда пользователь нажимает кнопку, чтобы добавить больше, что отлично работает. Однако в PHP, когда я получаю переданные значения поля $ _POST ['skills'], я получаю только первое значение текстового поля, а не динамически добавленные. Я почти уверен, что что-то не так с тем, как я добавляю текстовые поля в javascript. Я использую следующий метод, чтобы добавить поле текстового поля:Динамически добавить текстовое поле в javascript
function addTextBoxField()
{
var input = document.createElement('input');
input.type = "text";
input.name = "skills[]";
input.size = "30";
var container = document.getElementById("skillfield");
container.appendChild(input);
}
HTML-код у меня есть для текстового поля:
...
<td>
<div id="skillfield">
<input type="text" size="30" name="skills[]" />
</div>
</td>
<td><a href="javascript:void(0);" class="addLink hidden" onclick="addTextBoxField();"><div class="button">+ Add</div></a></td>
Вот код PHP, а также:
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
$allskills = $_POST['skills'];
$size = count($_POST['skills']);
print_r($allskills);
}
Выход следующий: хотя я ввел три значения
Array ([0] => Java)
все входы внутри '
В тексте вы указываете '$ _POST ['skill']', но ваше имя var объявляется как ** skills [] **, это опечатка в вашем вопросе? –
где php-код? это должно быть 'foreach ($ _ POST ['skills'] как $ skill) echo $ skill;' – Sachink