不,这不是关于如何使用AJAX的另一个问题。
为什么这对我不起作用?
守则应该做些什么:
当单击一个按钮时,它应该向一个文件发送一个标题和一个用户id,该文件应该将其插入到数据库中。然后,
.each
,并将每个.each
发送到一个PHP文件中,该文件应该将它们插入数据库。。
我得到的第一个警告与“第一”,但我没有得到一个与“第二”,没有任何插入的数据库。
我以前的代码可以很好地插入,而且它也是这样做的,只是没有那么高级,而且没有重定向功能。
我的代码:
$('#tabCreateButton').click(function () {
alert("first"); //checking for click
$.ajax({
type: "POST", url: "/page/newtab.php", data: "action=newtitle&tabname=" + tabname + "&bid=" + brugerid,
complete: function (data) {
alert("second"); //checking for response
var tabid = $(data.responseText);
var XHRs = [];
$('#tabCurrentFriends > .dragFriend').each(function () {
var friendid = $(this).data('rowid');
XHRs.push($.ajax({
type: "POST", url: "page/newtab.php", data: "action=newtab&tabid=" + tabid + "&bid=" + brugerid + "&fid=" + friendid,
complete: function (data) {
}
}));
});
$.when(XHRs).then(function () {
alert("third"); //should redirect here.
});
}
});
});
发布于 2011-12-12 13:23:51
您要么有XHR错误,要么没有看到Javascript错误。
您可以使用Chrome内置调试器(F12 -> Network -> XHR)或Firebug检查这些错误。
发布于 2011-12-12 13:11:00
尝试将complete:
替换为success:
和error:
,每个函数都有一个惟一的回调函数,您可以使用它们来检查XHR错误(如果有的话)。
https://stackoverflow.com/questions/8480785
复制相似问题