-1

次の状況では、関数 unwrap に少し問題があります。

<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>

削除ボタンを押すと、リスト項目が削除され、その間のすべてが保持されます<ol>が、<ol>タグも削除される必要があります。私はこれを成し遂げることができません。

そのため、ホームで削除ボタンを押すと、ホームが削除され、新しいユーザーと Pay が残るはずです。

4

1 に答える 1

0

これはあなたのシナリオで機能します(効率のためにさらに最適化できるかどうかはわかりません):

$('#menu_89').on('click', '.delete', function() {
  var $ele = $(this).closest("li").find("ol").eq(0);
   $ele.contents().unwrap();
   $(this).parent().parent().remove(); 
});

jsFiddle: http://jsfiddle.net/6JPzb/

于 2013-02-19T13:54:40.890 に答える