0
過去幾天我一直在研究peske問題。我創建了一個對象來處理登錄腳本。登錄腳本由PHP腳本女巫回波的加工出一個JSON對象:jQuery Ajax調用對象屬性範圍
{'status' : true} // could also be false
AJAX請求完成每次我可以CONSOLE.LOG()它。問題出在回調函數中。我曾嘗試以下允許參數/功能從文檔:
complete
success
.done()
在回電,我嘗試設置根據返回的對象屬性/變量。直到腳本運行第二次纔看到此分配。我假設這是因爲某些東西在另一個或範圍問題之前運行?
所以澄清: 可以說腳本運行,我回來了。然後我想要將對象屬性的狀態設置爲false而不是false。我在回調中放置了一個console.log(),每次都有效,但主對象不會看到它,除非我提交兩次。
這是代碼。任何和所有的幫助表示讚賞:
var loginAuth = {
form : $('form'),
status : false,
init : function() {
loginAuth.ajaxCall();
},
ajaxCall : function(loginData) {
// Get Post variables
var loginData = {
username : $('input[name=username]').val(),
password : $('input[name=password]').val()
};
// Proccess the form
$.ajax(
{
url : "http://localhost/url-where-results-are",
dataType : "json",
type : "post",
data : loginData,
}).done(function(data) {
if(typeof data != 'object')
{
$.parseJSON(data);
} else {
loginAuth.status = data;
console.log(loginAuth.status);
}
});
}
} //// END loginAuth Object ////
嘗試改變的console.log(loginAuth.status)到CONSOLE.LOG( 「mylog」,loginAuth.status) – Kristijan
附:這只是爲了看到控制檯中的結果真的是你的控制檯日誌 - 並且看到這真的發生了。 – Kristijan