有一段javascript / jQuery代码使用了jQuery的可排序功能。我使用它来对未知数量的div进行排序,尽管目前我正在尝试使用ajax将数据发送到数据库:
Javascript与jQuery.sortable& AJAX
var lst, pre;
$(".sortlist").sortable({
start:function(event, ui){
pre = ui.item.index();
},
axis: 'y',
handle: '.handle',
update: function (event, ui) {
var data = $("#list1").sortable("toArray");
console.log($("#list1").serializeArray = data);
$.ajax({
data: data,
type: 'POST',
url: 'backend/components/reorder-cards.php'
});
},
stop: function(event, ui) {
lst = $(this).attr('id');
post = ui.item.index();
other = (lst == 'list1') ? 'list2' : 'list1';
//Use insertBefore if moving UP, or insertAfter if moving DOWN
if (post > pre) {
$('#'+other+ ' div:eq(' +pre+ ')').insertAfter('#'+other+ ' div:eq(' +post+ ')');
} else {
$('#'+other+ ' div:eq(' +pre+ ')').insertBefore('#'+other+ ' div:eq(' +post+ ')');
}
}
}).disableSelection();
每次更新都应该使用代码在名为reorder-cards.php的php文件中执行INSERT
:
include('../../config/connect.php');
$data = $_POST['include('../../config/connect.php');
$data = $_POST['data'];
$insertdata = $conn->prepare("INSERT INTO pageOrder (order) VALUES (:order)");
$insertdata->bindParam(':order', $data, PDO::PARAM_STR);
$insertdata->execute();'];
$insertdata = $conn->prepare("INSERT INTO pageOrder (order) VALUES (:order)");
$insertdata->bindParam(':order', $data, PDO::PARAM_STR);
$insertdata->execute();
然而,它没有向数据库发送任何内容,我从来没有通过ajax插入工作。有人可以告诉我我做错了吗?
答案 0 :(得分:0)
使用DevTools(例如在Chrome中)检查您是否发送了正确的Ajax请求,以便更容易找到问题。