不,這不是關於如何使用AJAX的另一個問題。jQuery ajax,.each和ajax再次
爲什麼這不適合我?
的代碼應該做的:
當點擊一個按鈕,就應該發出一個標題和用戶ID的PHP文件,它應該插入到數據庫中。
然後它應該在div內的所有元素上創建一個
.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.
});
}
});
});
不應該$(data.responseText);只是data.responseText;? – craniumonempty
@TerryR帶有延遲對象數組的$ .when'正在工作。 – kubetz
@TerryR哇非常感謝!這是一個非常有用的工具! :) 它給了我的錯誤,tabname沒有定義我會看看它,並返回,如果它仍然不工作:) 非常感謝! – Flaashing