我正在尝试使用以下代码将 javascript 变量 'sortlist' 发送到 Ajax 函数:
<div id = "output">Drag to sort</div>
<script type="text/javascript">
var session = <? echo $sesh; ?>;
var track = <? echo $trk; ?>;
var sortlist = "sortlist_" + session + "_" + track;
Sortable.create(sortlist,{
onUpdate:function(){
new Ajax.Updater('output','program_sort.php',
{onComplete:function(request){},
parameters:Sortable.serialize(sortlist),
evalScripts:true,
asynchronous:true}
)
}
})
</script>
该变量似乎已成功传递给 Sortable.create (因为我可以对网页上的框进行排序),但它似乎没有传递给 Ajax.updater 中的 Sortable.serialize (因为它不再将排序顺序值写入数据库)。
当我在 Sortable.serialize 中使用文字值时,此代码有效,例如
parameters:Sortable.serialize('sortlist_1_1'),
我尝试使用 sortlist 作为变量,在 Sortable.serialize 中使用和不使用单引号和双引号均无济于事。成功传递此变量信息所需的格式是什么?
作为参考,我的 AJAX/javascript 经验大约是 1(1-10 级);我的 PHP/MySQL 经验大约是 7(1-10 级)。