function foobar(){
$.ajaxSetup ({cache: false});
var response = $.get("http://mysite.com/return.php")
document.write(response);
}
我試圖將此響應保存爲變量。我怎樣才能做到這一點?
function foobar(){
$.ajaxSetup ({cache: false});
var response = $.get("http://mysite.com/return.php")
document.write(response);
}
我試圖將此響應保存爲變量。我怎樣才能做到這一點?
$不用彷徨是一個異步AJAX調用 - 你文件撰寫線是要執行多久,服務器甚至向您發送的響應。
如果您要訪問的返回值,你需要做一個回調,像這樣:
$.get('/return.php', function(response) {
document.write(response);
});
那麼一切都必須在那裏? – jdborg
@jdborg是的,這就是異步編程的工作原理。在響應返回之前,get函數返回。 – Skilldrick
我已經運行了,並沒有得到任何東西,甚至沒有JS錯誤。 – jdborg
$不用彷徨處理的響應提供了一個成功的()函數...
function foobar(){
var response = null;
$.ajaxSetup ({cache: false});
$.get("http://mysite.com/return.php").success(function(respText) {
response = respText;
document.write(response);
});
}
可以使用$ .load()函數這個,因爲這是它的預期目的
從手冊:
這種方法是從獲取數據的最簡單方法服務器。它大致相當於$ .get(url,data,success),只是它是一個方法而不是全局函數,並且它有一個隱式回調函數。當檢測到成功的響應時(即,當textStatus是「成功」或「未被修改」時),.load()將匹配元素的HTML內容設置爲返回的數據。這意味着該方法的大多數用途可以非常簡單:
$('#result').load('ajax/test.html');
歡迎來到** async **的世界!你不能那樣做。 – SLaks
對不起,如果它沒有很好地解釋,但使用async:false,它的工作原理。 – jdborg
**不要使用'async:false' **!它會凍結瀏覽器。 – SLaks