0
A
回答
3
如果你有一個單一的XMLHttpRequest對象,你會聽readystatechange
事件來檢測,當操作完成,然後讀取status
屬性來檢測錯誤。
現在,如果您想要對所有對象執行此操作,則需要監聽所有發生的readystatechange
事件,即註冊到相應的事件,如果XMLHttpRequest被創建或初始化。這可以通過覆蓋XMLHttpRequest原型的開放方法來完成,以便它註冊您的事件偵聽器,然後調用舊的open。
我用下面的代碼是(在Firefox):
(function(open) {
XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {
this.addEventListener("readystatechange", function() {
if (this.readyState==4 && (this.status != 200 && this.status != 301 && this.status != 302)) {
alert("Error: "+this.statusText)
}
}, false);
open.call(this, method, url, async, user, pass);
};
})(XMLHttpRequest.prototype.open);
(假定open
每XMLHttpRequest對象只能調用一次或你的事件多次註冊,如果你想成爲安全,您可能可以通過添加this.open = open;
)
相關問題
- 1. Mongoose錯誤處理在一個地方
- 2. 如何在PhantomJS中處理XMLHttpRequest異常101錯誤?
- 3. 如何更有效地處理錯誤?
- 4. 如何優雅地處理ViewState錯誤?
- 5. 錯誤處理本地方法swift
- 6. Alamofire multple URLS錯誤處理在一個地方
- 7. 如何正確地處理Ajax並處理Rails中的部分表單錯誤?
- 8. 如何有效地處理WCF服務與錯誤處理
- 9. Go - 優雅地處理多個錯誤?
- 10. 在處理多個錯誤
- 11. 如何捕獲xmlhttprequest錯誤
- 12. 如何解決XMLHttprequest錯誤?
- 13. 如何處理單個頁面上的多個異步錯誤?
- 14. 處理的XMLHttpRequest在scrapy
- 15. 如何處理這個錯誤[PHP]
- 16. 如何處理這個混帳錯誤
- 17. 如何處理多個錯誤
- 18. 如何處理這個舍入錯誤
- 19. 如何處理'simplexml_load_string'錯誤?
- 20. 如何處理錯誤
- 21. 如何處理「Nonetype」錯誤?
- 22. 如何處理NoReverseMatch錯誤?
- 23. 如何處理CLI錯誤
- 24. ServiceStack:如何處理錯誤?
- 25. 如何處理錯誤
- 26. 如何處理錯誤
- 27. 如何處理錯誤笨
- 28. 如何處理MultiObjectsReturned錯誤
- 29. 如何處理BPEL錯誤
- 30. 如何處理System.OutOfMemoryException錯誤