Я использую sortable
для реализации одномерного списка виджетов. Это работает нормально, но когда я звоню serialize
, чтобы отправить текущий заказ обратно на сервер, генерируется неправильный заказ.
Вот мой HTML, обратите внимание на порядок идентификаторов виджетов: 13, 10, 11:
<div id="widget_columns">
<ul id="column1" class="widget-column grid_8 alpha ui-sortable">
<li id="widget_13" class="widget">
(a widget!)
</li>
<li id="widget_10" class="widget">
(a widget!)
</li>
<li id="widget_11" class="widget">
(a widget!)
</li>
</ul>
</div>
Список инициализируется с
$(#widget_columns').sortable({
connectWith: $(#widget_columns'),
handle: settings.handleSelector,
placeholder: 'widget-placeholder',
forcePlaceholderSize: true,
revert: 300,
delay: 100,
opacity: 0.8,
containment: 'document',
start: function (e, ui) {
$(ui.helper).addClass('dragging');
},
stop: function (e, ui) {
$(ui.item).css({ width: '' }).removeClass('dragging');
$(settings.columns).sortable('enable');
}
});
Однако, когда я тогда звоню
alert($('#widget_columns *').sortable('serialize'));
чтобы узнать порядок виджетов, я получаю правильные идентификаторы, но в неправильном порядке, 10, 11, 13:
widget[]=10&widget[]=11&widget[]=13
Есть идеи, почему это может быть?