JQuery метод .html () с тегом <option> - PullRequest
0 голосов
/ 07 марта 2012

Я пытаюсь отформатировать форму с использованием JQuery, редактируя HTML-код div.

Предположим, что соответствующий раздел HTML-файла выглядит следующим образом:

<div id="genForm">
</div>

В этой форме я должен использовать входы "select".

Следующий код jQuery работает без ошибок:

$("#genForm").html("<form action=\"apply.php\" method=\"post\"><select></select></form>")

Однако, в момент добавления тега <option>, выполните следующие действия:

$("#genForm").html("<form action=\"apply.php\" method=\"post\"><select><option></option></select></form>")

Код полностью ломается и отказывается редактировать HTML, оставляя мне пустое <div>.

Я совершенно не понимаю, почему это происходит. Пожалуйста, сообщите.

Ответы [ 2 ]

0 голосов
/ 07 марта 2012

Выезд http://jsfiddle.net/pratik136/kTGAe/

Код, кажется, работает правильно для меня.

0 голосов
/ 07 марта 2012

Я предполагаю, что у вас есть дополнительный код, который вы не собираетесь показывать, поэтому лучше всего попытаться разделить все на части.

var _form = $("<form action=\"apply.php\" method=\"post\"></form>");
var _sel = $("<select name='selectName'></select>");

_sel.append("<option value='0'>Select</option>");
_sel.append("<option value='1'>It's me</option>");
_sel.append("<option value='2'>Again</option>");
_form.append(_sel);

$("#genForm").append(_form); // or use .html() alternatively.

jQuery создаст узлы.jQuery знает все.

edit: только что добавил ссылку jsFiddle (вау, это круто!)

http://jsfiddle.net/QpQHN/4/

...