Вставьте ввод в div jQuery
Мне нужна помощь. У меня есть форма с некоторыми входами, и он отсортирован по div. Я хочу вставить в div больше входов, поэтому я попытался сделать что-то вроде этого:
$(document).ready(function(){
$("#more").click(function(){
$("#div_name").append("<input type=\"text\" name\"test\" value=\"test\" />");
});
});
И HTML это
<form action="" method="post" enctype="multipart/form-data" name="form_name">
<input type="text" name="text_input" value="test" />
<div id="div_name"></div>
<input type="button" id="more" value="Add more" />
</form>
И это прекрасно работает и добавляет входные данные великолепно, но когда я отправляю форму, он не отправляет входные данные, добавленные jquery, потому что, если я сделаю print_r($_POST); он покажет мне все посты, кроме тех, которые я только что добавил, поэтому вывод будет
Array
(
[text_input] => test
)
также, когда я использовал код JQuery выше. Но когда я делаю $("form"). Append(...); все идет отлично, но вход не в div. Спасибо.:)
2 ответа
Прежде всего, динамические входные данные, которые вы вставляете в форму, будут иметь одинаковое имя, поэтому они не будут работать. Вам нужно будет либо добавить число / строку в конец имени, чтобы дифференцировать все входные данные.
Вот скрипка для вас, чтобы проверить, и это показывает, что элемент формы содержит динамически созданные входные элементы. http://jsfiddle.net/umuff/
ОБНОВИТЬ:
Нашел, что ты делаешь неправильно
имя \"тест \" <=== Вы забыли знак равенства после имени
вот рабочая скрипка http://jsfiddle.net/umuff/1/
Ваш div должен быть внутри формы. просто переместите начальный тег формы до div, а тег /form после /div.
если это не работает, сделайте это наоборот:
<div id="...">
<form>
</form>
</div>