Целый день бьюсь на проблемой:
есть форма, у нее есть стандартный набор полей, и необходимо добавить динамическое добавление еще нескольких полей при нажатии на кнопку.
Так вот как бы я не создавал новые поля, они в итоге не передаются в массив POST вместе с остальными полями.
Вот код:
<input type="button" id="button_more" value="Добавить еще" onClick="return new_table()"/>
function new_table()
{
var elem = document.createElement('input')
elem.setAttribute('type','text');
elem.setAttribute('name','schet_dop');
elem.setAttribute('id','schet_dop');
elem.setAttribute('syze','15');
var shablon = document.getElementById('shablon');
shablon.appendChild(elem);
}
В чем может быть загвоздка??
Спустя 2 минуты, 47 секунд (5.10.2010 - 16:53) arvitaly написал(а):
А чож у вас добавляются все инпуты с одинаковыми именами?
Спустя 13 минут, 39 секунд (5.10.2010 - 17:07) Федор написал(а):
Да я максимально упростил код для для поиска места ошибки. в данном случае просто создаю одно доп поле, скрипт его обрабатывает создает на странице в коде правильно прописывается, а когда передается POSTом в скрипт обработчик, он его не видит, вывожу print_r($_POST) - там есть все поля кроме динамически созданного.
Причем если я например делаю не shablon.appendChild(elem), а беру всю форму и к ней добавляю новое поле (+=) с помощью innerHTML то все опять показывается как надо, но не передается ни одно из полей.
Причем если я например делаю не shablon.appendChild(elem), а беру всю форму и к ней добавляю новое поле (+=) с помощью innerHTML то все опять показывается как надо, но не передается ни одно из полей.
Спустя 2 минуты, 24 секунды (5.10.2010 - 17:10) arvitaly написал(а):
Не видел весь ваш код, но это работает
<?php
print_r($_POST);
?>
<input type="button" id="button_more" value="Добавить еще" onClick="return new_table()"/>
<form id="shablon" method="POST">
<input type="submit" value="Отправить" />
</form>
<script>
function new_table()
{
var elem = document.createElement('input')
elem.setAttribute('type','text');
elem.setAttribute('name','schet_dop');
elem.setAttribute('id','schet_dop');
elem.setAttribute('syze','15');
var shablon = document.getElementById('shablon');
shablon.appendChild(elem);
}
</script>
Спустя 8 минут, 6 секунд (5.10.2010 - 17:18) Michael написал(а):
Цитата (arvitaly @ 5.10.2010 - 16:10) |
elem.setAttribute('syze','15'); |
Это что - новый атрибут?
Спустя 3 минуты, 58 секунд (5.10.2010 - 17:22) arvitaly написал(а):
Цитата |
Это что - новый атрибут? |
Вы что еще не в курсе, теперь элементам управления можно давать не только имена но и фамилии! у этого например - mr. Schet_dop Syze
Спустя 31 минута, 22 секунды (5.10.2010 - 17:53) Guest написал(а):

В общем получилось что форма закрывается раньше чем я вставляю свой инпут, но при этом жестко зашитые в коде передаются а новые не хотят.
Спасибо за беспокойство)