JQuery: динамически создавать выбранный тег

Я использую JQuery для динамического (на основе выбора пользователя) создания тега. Пользователь вводит обязательные параметры в текстовое поле, а мой код создает его тег select. Сценарий:

<code>var numbersString = "1,2,3,4,5,6";
var data = numbersString.split(',');

var s = $("<select id=\"selectId\" name=\"selectName\" />");
for(var val in data) {
    $("<option />", {value: val, text: data[val]}).appendTo(s);
}
s.appendTo("#msj_form");
</code>

где msj_form - это мой идентификатор div, к которому добавляется тег. Прямо сейчас это создает:

<code><select id="selectId" anme="selectName">
    <option value="0">1</option>
    <option value="1">2</option>
    <option value="2">3</option>
    <option value="3">4</option>
    <option value="4">5</option>
    <option value="5">6</option>
</select>
</code>

Но я также хочу объединить метку и<tr><td> код вместе с тегом такой, что код будет выглядеть так:

<code><tr>
    <td>My Label</td>
    <td>
        <select id="selectId" anme="selectName">
            <option value="0">1</option>
            <option value="1">2</option>
            <option value="2">3</option>
            <option value="3">4</option>
            <option value="4">5</option>
            <option value="5">6</option>
        </select>
    </td>
</tr>
</code>

enter image description here

 Tamkeen14 мая 2012 г., 09:05
Вы можете сделать это следующим образом .var final = & lt; tr & lt; td & gt; мой ярлык здесь & lt; / td & lt; + s + & reg; & lt; tr & gt; & reg; , затем вы можете добавить к идентификатору таблицы $ ('a table; # tableid'). append (final);
 Guffa14 мая 2012 г., 08:55
Это выглядит прямо вперед ... Что вы пробовали?
 Philemon philip Kunjumon14 мая 2012 г., 08:59
дайте идентификатор тегу td, где вам нужно добавить этот тег выбора и добавить к этому div.
 PHP Ferrari14 мая 2012 г., 09:10
@Tamkeen: я пробовал: var final = & lt; tr & lt; td & gt; моя метка здесь & lt; / td & lt; td & quot; + s + & quot; & lt; tr & gt; & quot ;; $ ("# msj_form"). appendTo (окончательная версия); но ничего не отображалось, но когда я пытался: jQuery (& quot; # msj_form & quot;). append (final); браузер показывает: мой ярлык здесь [объект Object]
 PHP Ferrari14 мая 2012 г., 09:03
Я сделал jQuery ("# msj_form"). Append (appendLabel + "lt; td" + myelement + "/ td" / tr; & quot;); для других тегов и работает нормально, но не работает для выбора тега. @PhilemonphilipKunjumon: на самом деле я создаю скрипт, с помощью которого пользователь может создать HTML-форму со своими обязательными полями, поэтому я не могу жестко закодировать любые теги td / tr

Ответы на вопрос(4)

му - операция на удивление дорогая.

var s = $("<select id=\"selectId\" name=\"selectName\" />");
var opts = [];
for(var val in data) {
    opts.push( $("<option />", {value: val, text: data[val]}));
}

opts.appendTo(s);
 12 окт. 2014 г., 05:08
1) SyntaxError: missing ) after argument list, 2) TypeError: opts.appendTo is not a function.
 03 мар. 2015 г., 03:32
Аналогичное решение -stackoverflow.com/a/2162574/1606830
Решение Вопроса
<!-- Create Dropdown -->
/* 1- First get total numbers of SELECT tags used in your page to avoid elements name/id issues.
 * 2- Get all OPTIONS user entered with comma separator into a text box.
 * 3- Split user OPTIONS and make an array of these OPTIONS.
 * 4- Create SELECT code.
 * 5- Appent it into the temp div (a hidden div in your page).
 * 6- Then get that code.
 * 7- Now append code to your actual div.
 * 8- Filnally make empty the temp div therfore it will be like a new container for next SELECT tag.
 */

total = $("select").size() + 1;                                         // 1-
var myoptions = $("#myoptions").val();                                  // 2-
var data = myoptions.split(',');                                        // 3-
var s = $("<select id=\""+total+"\" name=\""+total+"\" />");            // 4-
for(var val in data) {
    $("<option />", {value: val, text: data[val]}).appendTo(s);
}
s.appendTo("#tempselect");                                              // 5-
var getselectcode = $("#tempselect").html();                            // 6-
$("#msj_form").append(appendLabel+"<td>"+getselectcode+"</td></tr>");   // 7-
$("#tempselect").html('');                                              // 8-

<div style="display:none;" id="tempselect"></div>                       // Temp div
var s = $("<select id=\"selectId\" name=\"selectName\" />");
for(var val in data) {
    $("<option />", {value: val, text: data[val]}).appendTo(s);
}

дующим образом:Jquery Wrap ()

$(s).wrap('<table><tr><td></td></tr></table>');
 16 мар. 2013 г., 22:27
Хороший и чистый, заслуживает
var html = '<tr><td><label for="select" style="text-transform:   none;">Label_name</label></td>'
            +'<td><select name="select" id="">'
            +'<option>Choose number..</option>'
            +'<option value="0">1</option>'
            +'<option value="1>2</option>'
            +'<option value="2">3</option>'
            +'</select></td></tr>';

$('#table_id').append(html);
$('#table_id').trigger('create');

Что я получаю, так это то, что если вы не вызываете trigger (), дизайн вашего select выглядит совершенно не так.

Ваш ответ на вопрос