我试图在主列表中嵌套几个列表。目标是组织菜单和子菜单。
的HTML:
<ul id="pages_0" class="sortable-list">
<li id="page_14">home
<ul id="pages_14" class="sortable-list">
<li id="page_21">nieuwsarchief</li>
<li id="page_19">waarom bouwelement</li>
<li id="page_20">vacatures</li>
</ul>
</li>
<li id="page_23">ondersteuning
<ul id="pages_23" class="sortable-list">
<li id="page_24">brochures</li>
<li id="page_25">constructie</li>
</ul>
</li>
<li id="page_18">producten</li>
<li id="page_26">contact</li>
<li id="page_28">referenties</li>
<li id="page_11">projectaanpak
<ul id="pages_11" class="sortable-list">
<li id="page_15">advies</li>
<li id="page_13">productie</li>
<li id="page_12">tekenwerk</li>
</ul>
</li>
</ul>
当前代码:
$(".sortable-list").sortable({ 更新:函数(){ $.post('/pages/order/0/, $('#pages_0').sortable("serialize", {key: 'pages_0[]'})) } }); $(".sortable-list").disableSelection();
但是,当我设置它时,正在发送的 var 当然是“pages_0”。
所以,我正在尝试:
$('ul.sortable-list').each(function() { pid = ''; pid = $(this).attr('id').split('_'); pid = pid[1]; 警报(PID); $('#pages_'+pid).sortable({ 更新:函数(){ $.post('/pages/order/'+pid, $('#pages_'+pid).sortable("serialize", {key: 'pages_'+pid+'[]'})) } }); $('#pages_'+pid).disableSelection(); 警报(PID); });
但是,我的问题:在我的情况下:如果我使用第二个 jquery,每当我排序时,我都会得到“11”(来自 pages_11,最后一个 ul)。我当然想要父 ul 的 id。关于解决这个问题的任何想法?谢谢!