我有一個web應用程序調用ajax web服務。這個web服務返回我的應用程序的配置,所以ajax調用需要設置爲{async:false}。 當我的服務器啓動時,一切正常,但如果不是,我的瀏覽器就會凍結。即使我在ajax呼叫設置中設置了超時時間。 我有一個錯誤處理函數,即使超時通過也不會被調用。
有人曾經遇到過這種情況嗎?
@Edit:我的問題可以通過執行異步調用
我有一個web應用程序調用ajax web服務。這個web服務返回我的應用程序的配置,所以ajax調用需要設置爲{async:false}。 當我的服務器啓動時,一切正常,但如果不是,我的瀏覽器就會凍結。即使我在ajax呼叫設置中設置了超時時間。 我有一個錯誤處理函數,即使超時通過也不會被調用。
有人曾經遇到過這種情況嗎?
@Edit:我的問題可以通過執行異步調用
當瀏覽器是單線程這將是更好地處理在回調成功返回的配置 ,並在錯誤回調處理任何錯誤來解決。
$.ajax({
url: "mydomain.com/url",
type: "GET",
dataType: "json",
data: $.param($("Element or Expression")),
complete: function() {
//called when complete
},
success: function() {
//called when successful
},
error: function() {
//called when there is an error
},
});
好吧,我發現那種在後一個答案:http://stackoverflow.com/questions/2195259/ajax-synchronous-call-with-timeout – Celero 2011-04-12 12:15:41
這就是我要建議。祝你好運;) – 2011-04-12 12:17:42
爲什麼不做異步,並有''成功'回調函數中運行所需的任何代碼? – 2011-04-12 12:18:53