0

ユーザーがHTMLテンプレートのナビゲーションまたはメニューを作成できるHTML構造があります。ユーザーはドラッグアンドドロップでメニューとサブメニューを作成できます。[更新]をクリックすると、変更が加えられたメニューが更新されます。これは動的に構築され、停止したhtmlは以下のとおりです

<ol class="sortable ui-sortable" id="addMenu">
 <li>
  <div class="droppable ui-droppable">
   <a href="javascript:void(0);">Menu1</a>
  </div>
  <ol>
   <li style="display: list-item;">
     <div class="droppable ui-droppable">
       <a href="javascript:void(0);">Menu2</a>
     </div>
   </li>
  </ol>
 </li>
 <li>
    <div class="droppable ui-droppable">
      <a href="javascript:void(0);">Menu3</a>
    </div>
 </li>

私たちが達成したいのは、ユーザーがメニューの作成またはメニューの更新を言ったときに、構造の残りの部分をそのままにして、構造内のすべての場所からdivwithを削除する必要があるということです。class=droppable

.unwrap()and関数を使用して試しましたreplaceWith()が、期待どおりに機能しないようです。

var menuHtml = $('#addMenu').html();
menuHtml = '<ol id="toRmv">'+menuHtml+'</ol>';

$('#'+IdParent+' .navigationInner').html(menuHtml);
var newHtml = $('#'+IdParent+' .navigationInner').html();

$menuHtml = $("#toRmv div.droppable > a").unwrap();

$('#'+IdParent+' .navigationInner').html($menuHtml);

どうすればそれを達成できますか?

4

1 に答える 1

1

divアンカーの周りからドロップ可能なものを削除したい場合は、次のようにします。

$("#addMenu div.droppable > a").unwrap();

実例| ソース

于 2013-02-25T09:44:28.197 に答える