2011-10-01 65 views
-3

我有一個JavaScript沒有按順序運行。該腳本建立一個卸載功能。它使用$ .get jQuery命令來檢索文件,然後將文件打印到外部設備。我添加了一些警報框,所以我會知道它是否正在運行每個功能,並且我發現它在嘗試打印文件之前正在嘗試打印。我改變了我的代碼,以便它在卸載函數中檢索文件,在點擊功能上打印文件,並且它完美地工作。它有沒有理由按順序運行$ .get命令?

+0

安德魯,Java和JavaScript是完全不同的語言。 – Mat

+1

請添加您的代碼,以便我們可以看到發生了什麼。 – bittersweetryan

+1

我會躺在10英鎊的問題的原因是,你還沒有理解AJAX中的「異步」意味着什麼,但不可能說沒有看到代碼... – lonesomeday

回答

3

AJAX請求被髮送,但處理繼續 - 直到接收到響應纔會停止。

所以,如果你想要的東西去順序,你需要做的處理封閉:

$.get(url, function(response) 
{ 
    // Process the response 

    // do other stuff 
}; 

不:

$.get(url); 

// do other stuff 
+0

這看起來應該是完美的!謝謝。 – Andrew