Введенное в JavaScript поле формы не отображается в данных POST - PullRequest
0 голосов
/ 31 января 2010

У меня есть форма, которая генерирует новые поля ввода через JavaScript при нажатии. входы успешно добавлены в ФОРМУ с желаемым соглашением об именах.

<input type="text" name="util_name0" id="util_name0" value="" /><br/>
<input type="button" onClick="newUtil(this)" value="Add New" />

newUtil() добавляет:

<input type="text" name="util_name1" id="util_name1" value="" />

однако после публикации, print_r($_POST) перечисляет только 'util_name0'.

Обычно я вставляю некоторый код, но это все, что мне действительно нужно сделать на этом этапе ... Форма во включении вызывается из parent.php. Javascript вызывается в parent.php

JS:

function newUtil(el) {
    var newval = util_count++;
    $('#qty').attr('value', newval);
    $(el).before('-------------<br />
   <div class="newUtilField">
       <label for="util_type'+newval+'">Type (i.e. gas, electric...) '+newval+'</label><br />
       <input type="text" name="util_type'+newval+'" id="util_type'+newval+'" value="" /><br /><br />
       <label for="util_name'+newval+'">Company Name</label><br />
       <input type="text" name="util_name'+newval+'" id="util_name'+newval+'" value="" /><br /><br />
       <label for="util_number'+newval+'">Company Number</label><br />
       <input type="text" name="util_number'+newval+'" id="util_number'+newval+'" value="" />
   </div><br /><br />');
}

Ответы [ 3 ]

0 голосов
/ 31 января 2010

После выполнения кода js, добавляющего новое поле, проверьте новый элемент, используя Firebug (в Firefox) или Web Inspector (в safari и google chrome). Если новое поле находится за пределами тега form, оно не будет включено в форму отправки.

Если можете, укажите структуру form и ее поля. Также убедитесь, что на странице нет других ошибок, и тег хорошо сбалансирован, все открытые теги были закрыты в нужном месте. Закрывающий тег неправильного места может привести к ошибке и непредвиденному поведению.

0 голосов
/ 31 января 2010

Это ведет себя иначе в IE, чем в Firefox? Запустите сниффер HTTP (например, Fiddler), внимательно проверьте заголовки постов HTTP.

0 голосов
/ 31 января 2010

Рекомендую создавать правильные объекты, а не создавать подобные элементы. Создавайте элементы и вставляйте их один за другим.

РЕДАКТИРОВАТЬ : проверить ссылку http://domscripting.com/blog/display/99

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...