我正在使用 jquery-ui 来组织 div 并将更改保存回服务器上。
为此,我从直接涉及的 2 个 div 中读取了一些信息,并通过 ajax 将它们发送到另一个页面中。
所以,我有一个代码,在拖动 dom 更新后,div 的属性“pos”被移动,div 的属性在它之后。如果第一个的 attr "pos" 是第二个的 >,它会触发这个脚本。
if (ui.item.attr('pos') > ui.item.next().attr('pos'))
{
$.ajax({
type: "POST",
url: "muovi.php",
data: { in:ui.item.attr('ids'), pos1:ui.item.attr('pos'), out:ui.item.next().attr('ids'), pos2:ui.item.next().attr('pos')},
success: function(response){
$.ajax({
url: "",
context: document.body,
success: function(s,x){ ( -> Reload the page )
$(this).html(s);
}
});
$(".overlay").css("visibility","hidden"); (-> to understand if something went wrong)
}
});
}
问题是,如果我有这样的 div:
[...]
<div class="game" pos="7" ids="something">
<div class="game" pos="8" ids="something else">
<div class="game" pos="9" ids="~">
<div class="game" pos="10" ids="~">
<div class="game" pos="11" ids="~">
[...]
如果我将位置为 1-9 的 div 移动到位置为 1-9 的 div 上,则不会出现错误,如果位置 10-99 中的 div 相同。但是,如果我尝试将 10-99 的 div 移回 1-9 的 div 上,脚本似乎不起作用。
所以,如果有不同的位数,我就有这个问题。这是否可以在不编辑“pos”字段的情况下解决?问题清楚了吗?我应该添加更多信息吗?