【问题标题】:Jquery Clone direct children of element onlyJquery仅克隆元素的直接子元素
【发布时间】:2015-08-05 14:26:29
【问题描述】:

我正在尝试克隆无序列表的第一级,而不是除此之外的任何子级。我的清单如下。

<ul class='leftNav'>
    <li>A</li>
    <li>D</li>
    <li>C<ul>
         <li>1</li>
         <li>2</li>
         <li>3</li>
    </li>
    <li>D</li>
</ul>

我正在使用以下内容来克隆列表项,但这是在克隆所有内容:

var leftNav = $(".leftNav").children().clone();

我想要的是这样的:

<li>A</li>
<li>D</li>
<li>C</li>
<li>D</li>

这可以用 jQuery 实现吗?

【问题讨论】:

    标签: jquery clone children


    【解决方案1】:

    你可以这样做:

    var leftNav = $('.leftNav > li').clone().find('ul').remove().end()
    

    jsFiddle example

    【讨论】:

      【解决方案2】:

      您需要先添加所有的 li(带有 sub-ul),然后找到“ul”并将其删除:

      var leftNav = $(".leftNav").children().clone();
      leftNav.find("ul").remove();
      $(".clone").append(leftNav);
      

      http://jsfiddle.net/952acm99/1/

      【讨论】:

        【解决方案3】:
        var leftNav = $(".leftNav").children().clone().find('*').remove().end();
        

        jsFiddle 示例:https://jsfiddle.net/rcjwv0ez/

        【讨论】:

          猜你喜欢
          • 2021-12-31
          • 1970-01-01
          • 2011-04-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-03-08
          • 2011-12-20
          • 2016-04-08
          相关资源
          最近更新 更多