PHP jQuery更新可排序的嵌套菜单

时间:2013-05-26 11:46:10

标签: php jquery

我有一个嵌套菜单,它是一个带子菜单的菜单。我正在尝试使用jquery sortable http://jqueryui.com/sortable/#portlets

创建一个接口

您可以对此菜单进行排序,但我想保存更改。我的数据库如下所示:

+---------+-----------+------+
| item_id | parent_id | name |
+---------+-----------+------+
| 1       | 0         | Home |
+---------+-----------+------+
| 2       | 0         | Test |
+---------+-----------+------+
| 3       | 2         | Bla  |
+---------+-----------+------+
| 4       | 0         | Baa  |
+---------+-----------+------+

我的可排序菜单看起来像

<div class="column">
  <div class="portlet">
    <div class="portlet-header">Home</div>
  </div>
</div>

<div class="column">
  <div class="portlet">
<div class="portlet-header">Test</div>
  </div>

  <div class="portlet">
<div class="portlet-header">Bla</div>
  </div>
</div>

<div class="column">
  <div class="portlet">
<div class="portlet-header">Baa</div>
  </div>
</div>

我的jQuery看起来像

$(function() {
  $( ".column" ).sortable({
    connectWith: ".column",
    update: function() {
    }    

  });

  $( ".portlet" ).addClass( "ui-widget ui-widget-content ui-helper-clearfix ui-corner-all" )
    .find( ".portlet-header" )
    .addClass( "ui-widget-header ui-corner-all" )
    .end()
});

我怎样才能知道菜单项的新位置是什么?

1 个答案:

答案 0 :(得分:2)

这应该显示订单。并按照文档中的顺序将其存储在数组中。

var menu = new Array();
var order = 0;

$(".portlet-header").each(function(){
    menu.push($(this).html());
    alert(order + ":" + $(this).html());
    order += 1;
});