Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery在li中展开ol_Jquery_Dom - Fatal编程技术网

JQuery在li中展开ol

JQuery在li中展开ol,jquery,dom,Jquery,Dom,在以下情况下,函数“展开”有一个小问题: <li id="menu_89"> <div class="list-item">Home <div class="actions"><a class="delete" href="#">Delete</a> </div> </div> <ol> <li id="menu_91"&g

在以下情况下,函数“展开”有一个小问题:

<li id="menu_89">
    <div class="list-item">Home
        <div class="actions"><a class="delete" href="#">Delete</a>
        </div>
    </div>
    <ol>
        <li id="menu_91">
            <div class="list-item">New user
                <div class="actions"><a class="delete" href="#">Delete</a>
                </div>
            </div>
            <ol>
                <li id="menu_93">
                    <div class="list-item">Pay
                        <div class="actions"><a class="delete" href="#">Delete</a>
                        </div>
                    </div>
                </li>
            </ol>
        </li>
    </ol>
</li>
  • 新用户
  • 支付
  • 按delete(删除)按钮时,应删除列表项,并且
    之间的所有内容应保留,但
    标记也应删除。我做不到


    因此,当您按下主页上的“删除”按钮时,主页应被删除,新用户和付款应保持不变。

    这适用于您的场景(我不确定是否可以进一步优化以提高效率):


    jsFiddle:

    您的代码在哪里?你提到了
    unwrap
    ,所以我希望看到它在某处使用。(这不是你想要的,我只是说…)如果他想要保留元素的内部HTML,并删除容器标记,这正是他想要的。对不起,忘了添加我尝试过的代码,我的错。
    $('#menu_89').on('click', '.delete', function() {
      var $ele = $(this).closest("li").find("ol").eq(0);
       $ele.contents().unwrap();
       $(this).parent().parent().remove(); 
    });