我现在的困境似乎超出了我的能力范围!
我使用类'biglist'有一组连接的sortables。
我想要做的是绑定#biglist的sortreceive回调(每当列表从另一个接收元素时生成)以获取元素的'boxnum'值(表示它来自哪个列表)并执行一个UPDATE查询将id的boxnum值从例如5(列出它的列表)更改为7(列出它被拖动到),以便状态持续存在。
所以交换会像(大致)
那样发生$( "#biglist" ).bind( "sortreceive", function(event, ui) {
ajax call to boxchange.php
create vars to represent elements 'boxnum' value and 'box moved to' value
});
然后在boxchange.php - >
里面 $id = $_POST['id']
$box = $_POST['boxnum']
->update query SET boxid to new boxid WHERE id = posted ID of element
我希望这是有道理的。这似乎是一个非常光滑的方式让我的程序工作! 非常感谢任何帮助。
EDIT:
刚刚清理了这个函数,看看是否有任何需要对它进行的更改(我知道它有,因为它看起来很邋))这个函数需要分别复制/修改每个可排序但是它' d至少让这个程序工作!
function ReceiveTwo()
{
$('#sortable2').bind('sortreceive', function(event, ui)
{
boxnum = $(this).attr('boxnum');
id = $(this).attr('id');
$.ajax
({
url: "boxchange.php",
type: "POST",
data: boxnum, id,
success : function(feedback)
{
$('#data').html(feedback)
}
})
});
$('#sortable2').sortable("refresh");
});
答案 0 :(得分:2)
$('#sortable2').bind('sortreceive', function(event, ui) {
$.ajax({
url: "boxchange.php",
type: "POST",
beforesend: function(){
boxnum = $(this).attr('boxnum');
id = $(this).attr('id');
},
data: {'boxnum': boxnum, 'id': id},
success : function(feedback) {
$('#data').html(feedback),
}
});
});
beforesend是在ajax调用之前触发的事件。我相信你可以设置你的属性来完成你想要的东西。
答案 1 :(得分:0)
我认为您希望将Javascript数据发送到服务器端PHP脚本的方式是使用Javascript关联数组,如下所示:
$.ajax({
url: "boxchange.php",
type: "POST",
data: {'boxnum': boxnum, 'id': id},
success: function(data,status) { ... }
您的“boxchange.php”脚本可以通过$ _POST ['boxnum']和$ _POST ['id']访问这些变量。
我认为那是你的目标,但我并不完全确定......