为什么jquery克隆克隆父节点而不是它的子节点?

时间:2012-04-23 17:39:56

标签: jquery clone

我的父母div和它的孩子一样:

<div id="padre" class="demo">
 <ul id="sortable1" class="droptrue ui-sortable">
  <li id="app1" class="ui-state-default toolTip">
   <div id="00" class="AppPadre"></div>

所以当我用下一行克隆我的父div时:

var $copia = $('#padre>*').clone();

我打印我的克隆变量,它只显示:

<div id="padre" class="demo">
 <ul id="sortable1" class="droptrue ui-sortable">

有谁知道为什么只复制前2级? 提前致谢。 复制之后我用$('#padre&gt; *')删除了所有“padre”的子元素.remove();并且它确实删除了所有子元素,但是当我执行追加时它只附加第一个子元素“padre”。

2 个答案:

答案 0 :(得分:5)

您没有正确关闭代码:

<div id="padre" class="demo">

     <ul id="sortable1" class="droptrue ui-sortable">
        <li id="app1" class="ui-state-default toolTip"><li>
     </ul>

    <div id="00" class="AppPadre"></div>

</div>

http://jsfiddle.net/E8uJm/


编辑:尝试以下操作:

$('#padre').children().clone();
$("#clone").append($copia);
$('#padre').remove();

http://jsfiddle.net/E8uJm/2/

答案 1 :(得分:1)

试试这个:

var $copia = $('#padre>*').clone(true, true);
相关问题