jQuery ajax、.each和ajax
不,这不是关于如何使用AJAX的另一个问题 为什么这对我不起作用 代码应该做什么:jQuery ajax、.each和ajax,jquery,Jquery,不,这不是关于如何使用AJAX的另一个问题 为什么这对我不起作用 代码应该做什么: 当点击一个按钮时,它应该向PHP文件发送一个标题和一个用户id,PHP文件应该将其插入数据库中 然后它应该在div中的所有元素上创建一个。每个,并将它们发送到一个PHP文件,该文件应该将它们插入数据库 最后,它应该重定向 我得到第一个带有“first”的警报,但没有得到带有“second”的警报,数据库中没有插入任何内容 我以前的代码在插入方面工作得很好,它也做得很好,只是没有那么高级,没有重定向功能 我的代码:
。每个,并将它们发送到一个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.
});
}
});
});
尝试将
complete:
替换为success:
和error:
,每个都有一个唯一的回调函数,可用于检查XHR错误(如果有)。尝试将complete:
替换为success:
和error:
,每个都有一个唯一的回调函数,您可以使用它来检查XHR错误(如果有)。您可能有一个XHR错误或一个您没有看到的Javascript错误
您可以使用Chrome的内置调试器(F12-->网络-->XHR)或Firebug检查这些错误。您可能有XHR错误或未看到的Javascript错误
您可以使用Chrome的内置调试器(F12-->网络-->XHR)或Firebug检查这些错误。不应$(data.responseText);只是数据。responseText@TerryR
$。当带有延迟对象数组的
工作时。@TerryR哇,非常感谢!这是一个非常有用的工具!:)它给了我一个错误,没有定义tabname,我会查看它,如果它仍然不工作,我会返回:)非常感谢!成功!谢谢@TerryR:)当然,很可能brugerid
也没有定义,因为它看起来像是同一个变量范围。不应该$(data.responseText);只是数据。responseText@TerryR$。当带有延迟对象数组的
工作时。@TerryR哇,非常感谢!这是一个非常有用的工具!:)它给了我一个错误,没有定义tabname,我会查看它,如果它仍然不工作,我会返回:)非常感谢!成功!谢谢@TerryR:)当然,由于它看起来像同一个变量范围,所以也没有定义brugerid
。我一直使用complete:without problems:)但不幸的是这对以太没有帮助我一直使用complete:without problems:)但不幸的是这对以太没有帮助