将元素作为父元素

时间:2013-01-30 13:23:07

标签: javascript jquery html dom

我有一个现有的HTML as;

<div id="maincontent">
        <div id="firstname_lbl"></div>
        <div id="firstname_fld"></div>
</div>

我正在动态创建一个jQuery表单;

$('<' + items.type + '/>').attr({
        "action": items.action,
         "name": items.name,
         "class": items.attributes.class
        })

现在我希望这个“form”元素成为现有“maincontent”div的父元素

所以DOM应该是这样的;

<form>
<div id="maincontent">
            <div id="firstname_lbl"></div>
            <div id="firstname_fld"></div>
    </div>
</form>

如何使用jQuery执行此操作?

此外,我在IE中获得此行的预期标识符(在Firefox中正常工作);

var formEle = $('<' + items.type + '/>').attr({
        "action": items.action,
         "name": items.name,
         "class": items.attributes.class});

2 个答案:

答案 0 :(得分:4)

您应该使用wrap

var form = $("<" + items.type + "/>").attr({
    action: items.action,
    name: items.name,
    "class": items.attributes["class"]
});

$("#maincontent").wrap(form);

答案 1 :(得分:0)

这里提供了一个很好的解决方案:How to move child element from one parent to another using jQuery

以下是代码:

(function($){
    $.fn.moveTo = function(selector){
        return this.each(function(){
            var cl = $(this).clone();
            $(cl).appendTo(selector);
            $(this).remove();
        });
    };
})(jQuery);

$('#maincontent').moveTo('[FormSelectorHere]');