我正在向服務器發送一個請求來檢查user_id和session_id對,以確保它是有效的。此函數獲取與session_id關聯的會話數據,然後如果會話數據中的user_id與傳遞給該函數的參數匹配作爲參數,則它應該執行回調。不幸的是,由於某種原因,回調不會執行。如果我在控制檯中鍵入session_is_valid(2,1,function(){alert('hi');});「,我可以看到控制檯中記錄的」成功「,但沒有提示。同樣,如果我使用了一個無效對,我會收到一條「失敗」消息。但回調從不執行。Jquery AJAX回調沒有成功執行
這是我在瀏覽器中如何使用控制檯的一些問題?或者我的功能有問題嗎?
//Confirm a session id/user id pair
function session_is_valid(session_id, user_id, callback) {
var data = {'id': session_id};
return $.ajax({
type: "POST",
url: ears_path + "?q=session",
data: JSON.stringify(data),
contentType: 'application/json; charset=UTF-8',
dataType: 'json',
success: function (result) {
if(result.user_id === user_id) {
console.log('success');
callback
}
else { console.log('failure'); }
}
});
}
而'callback'什麼都不做。可以試試'callback()'inatead? ;) –
@Jonasw其實我只是一直使用回調函數,並且它在其他函數中總是可以很好地工作。這怎麼可能? – Forrest
@Jonasw我也不明白你提到的可能重複的相關性。我一直都在使用AJAX,並完全理解這些動態,我不會嘗試不恰當地使用「返回」。我只是試圖根據查詢的結果進行有條件的回調。 – Forrest