Draggable 使用可拖动/可下降功能更改开关位置,并将新位置保存在db中

Draggable 使用可拖动/可下降功能更改开关位置,并将新位置保存在db中,draggable,nodes,swap,Draggable,Nodes,Swap,在堆栈上为我的项目找到了一个很好的解决方案,但我现在测试了几天,寻找一个在数据库中切换后保存数据的解决方案 原职: 现在我想用停止来保存掉的东西 $(function() { $(".swapable"). draggable( { revert: true, stop:function() { // put new div combination

在堆栈上为我的项目找到了一个很好的解决方案,但我现在测试了几天,寻找一个在数据库中切换后保存数据的解决方案

原职:

现在我想用停止来保存掉的东西

$(function() {
    $(".swapable").
        draggable(
        { 
            revert: true,
            stop:function()
            {
                // put new div combination in db
            }
        }).
        droppable(
        {
            drop:function(event,ui)
            {
                swapNodes($(this).get(0),$(ui.draggable).get(0));
            }
        });
});

function swapNodes(a, b) 
{
    var aparent= a.parentNode;
    var asibling= a.nextSibling===b? a : a.nextSibling;
    b.parentNode.insertBefore(a, b);
    aparent.insertBefore(b, asibling);
}
如何找到将新的div组合放入数据库的方法


我的问题是如何找到正确的方式来显示新的div组合。

嘿,你有多远?你试过什么?你遇到了什么错误?顺便说一句,我是个新手。您好,我想使用sortable,但我没有找到可以用对象“b”更改对象位置“a”的内容。如果(鼠标)按住项目通过,sortable将更改位置。有了上面的代码,我无法使用可排序方法serialize:-(我得到了一个大列表,其中每个div都有一个uniquer id。所有div都在一个大div中。正常位置是1-100,比如12…如果我在stop html()上使用的位置发生变化)到带有警报的变量。警报向我显示了所有html代码。我无法使用它。我认为需要一个数组,但不了解它是如何工作的。如果数组完成,我想在我的dboh中保存新的div位置列表。此工作var some=[];$('div#boxcreator div')。每个(函数(){some.push($(this.attr(“id”);});警报(some);好的,那么考虑一下您需要做什么。浏览器中的JS无法直接访问您的数据库,因此您需要服务器上的脚本来接收新订单并更新数据库。现在考虑AJAX脚本需要的数据格式,以便能够识别和重新排序数据库中的项目。然后将AJAX请求发送给y我们的脚本,将其处理到DB中,然后在页面上的JS中预测服务器的响应。。
$(function() {
    $(".swapable").
        draggable(
        { 
            revert: true,
            stop:function()
            {
                // put new div combination in db
            }
        }).
        droppable(
        {
            drop:function(event,ui)
            {
                swapNodes($(this).get(0),$(ui.draggable).get(0));
            }
        });
});

function swapNodes(a, b) 
{
    var aparent= a.parentNode;
    var asibling= a.nextSibling===b? a : a.nextSibling;
    b.parentNode.insertBefore(a, b);
    aparent.insertBefore(b, asibling);
}