jQuery - 拖放列表重新排序

Chu*_*utt 1 php sorting jquery html5 jquery-ui

我有一个HTML列表,我想让用户能够通过拖放重新排序,然后将他们的更改提交到数据库.

我很满意所有数据库的东西,但我正在努力使用Javascript/JQuery.

我目前有jQuery UI Sortable工作正常(所以其他和通过拖放重新排序元素),但我不知道如何获得SUBMIT的新订单.

有人可以帮忙吗?如果您需要更多信息,请说明.谢谢!

Rin*_*ler 6

例如,通过AJAX调用将数据发送到您的应用程序

$('#TabContainer').tabs();
$('#TabContainer .ui-tabs-nav').sortable({
    axis: 'x',
    update: function(event, ui){
        var data = $('#TabContainer .ui-tabs-nav').sortable('serialize');
        $.ajax({
            url: '/events/update-tab-order',
            data: data,
            type: 'POST',
            mode: 'abort'
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

唯一棘手的部分是您必须以列表格式在列表项上指定ID groupname_identifier.例如:

<div id="TabContainer">
    <ul>
        <li id="MyTabs_123"><a href="#tab0">Tab 1</a></li>
        <li id="MyTabs_124"><a href="#tab1">Tab 2</a></li>
        ...etc
    </ul>
    ...tab content goes here
</div>
Run Code Online (Sandbox Code Playgroud)

然后,当您的应用程序收到POST数据时,它将是一个如下所示的数组:

$_POST['MyTabs']

array(
    0 => '123',
    1 => '124'
)
Run Code Online (Sandbox Code Playgroud)