添加场到形式(jQuery的)(Adding a field to a form (jQuery))

2019-09-16 08:49发布

我构造形式。 这里没有问题。 除了一个提交按钮,我还有一个按钮,点击后,又增加了现场的形式。 我试图使用JavaScript(jQuery的)来做到这一点。 不用说,我的运气不好。 我已经尝试了许多不同的方法,这是一个我放弃了在:

$("#snew").click(function () {  
var container = $("#sblc").add("div");
var content = "<select> <option>Domestic</option><option>Tiger</option><option>Peeled                  Raw</option><option>Cooked Peeled Tail On<option></select><select> <option>1 lbs</option>   <option>2 lbs</option><option>3 lbs</option></select>";

                $(container).attr("class", "opt");
                $(container).append(content); 
                $(container).appendTo("#sblc"); 

            })

下面是对应的HTML: http://pastie.org/3729304 (我无法弄清楚如何让HTML来这里上正确显示很抱歉的链接。)

每当我试试这个,我最终要么得到一个全白的页面,或没有任何反应都没有。 任何帮助将不胜感激。

Answer 1:

尝试类似下面,

DEMO

$("#snew").click(function() {
    var container = $("<div />");
    var content = "<select> <option>Domestic</option><option>Tiger</option><option>Peeled                  Raw</option><option>Cooked Peeled Tail On<option></select><select> <option>1 lbs</option>   <option>2 lbs</option><option>3 lbs</option></select>";

    $(container)
        .attr("class", "opt") //add class to the div container
        .append(content)      //append select to the div
        .appendTo("#sblc");   //append div to #sblc

});


Answer 2:

我认为你需要做的:

var container = $("<div>"); // notice the `<` and `>`

这样,您可以创建新的DIV容器和append后,它(你已经这样做了)



Answer 3:

你有你如何追加一个错误。

http://jsfiddle.net/NYnYw/



Answer 4:

这将与您提供的代码工作:

$("#snew").click(function () {
    var container = $("#sblc");
    var content = "<div><select> <option>Domestic</option><option>Tiger</option><option>Peeled                  Raw</option><option>Cooked Peeled Tail On<option></select><select> <option>1 lbs</option>   <option>2 lbs</option><option>3 lbs</option></select></div>";

    $(container).attr("class", "opt");
    $(container).append(content);
})


Answer 5:

怎么样只是要求追加一次:

    $("#sblc").append("<div class=\"opt\"><select><option>Domestic</option><option>Tiger</option><option>Peeled                  Raw</option><option>Cooked Peeled Tail On<option></select><select> <option>1 lbs</option><option>2 lbs</option><option>3 lbs</option></select></div>");


Answer 6:

你的逻辑似乎不可思议......你先声明container$("#sblc").add("div")是指对象的jQuery的集合,包括#sblc和尽可能多的div ,因为它无法比拟的。 这真的是你想要做什么?
然后,双包container的jQuery对象是unnecesary。
这在我看来是不寻常的部分是$(container).appendTo("#sblc") 要追加的双包装container ,或#slbc + divs#slbc ? 不明白...
你可以尝试这样的事:

$("#snew").click(function () {

    var $container =  # ('#slbc'),
        materials = ['Domestic', 'Tiger', 'Peeled Raw', 'Cooked Peeled Tail On'],
        values = ['1 lbs', '2 lbs', '3 lbs'],
        html = '<select><option>' + materials.join('</option><option>') + '</option></select>' +
            '<select><option>' + values.join('</option><option>') + '</option></select>';

    $container.append(html).addClass('opt');

});


文章来源: Adding a field to a form (jQuery)