您好,登錄后才能下訂單哦!
這篇文章主要講解了“ASP.NET AJAX有什么用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“ASP.NET AJAX有什么用”吧!
一般來說,有成功就有失敗,異步調用也是一樣,會出現請求異常的情況。在傳統的Ajax中,不論請求成功還是失敗,回調函數都會被調用,然后我們可以判斷 XMLHttpRequest對象的狀態確定請求是否成功,如果失敗了,可以進行異常處理。
但是,在ASP.NET AJAX應用中,只有成功時回調函數才會被調用,那么失敗時怎么辦?其實,ASP.NET AJAX允許我們在調用后臺方法時指定兩個回調函數,語法如下:
類名.方法名(參數1,參數2,……,參數n,請求成功時的回調函數,請求失敗時的回調函數)
只不過在前面的應用中,我們省略了第二個回調函數。為了理解這個地方,我們做一個小實驗,打開上一篇中的ASPNETAJAXTest這個程序,將ajax.js這個文件里的內容做如下修改:
ajax.js:
//單擊btnSayHello時調用的JS函數 function btnSayHello_onClick() { SayHelloService.SayHello(OnSucceeded,OnFailded); } //成功時的回調函數 function OnSucceeded(reusltText) { $get("result").innerHTML=reusltText; } //失敗時的回掉函數 function OnFailded(error) { $get("result").innerHTML="調用失敗。錯誤信息:"+error.get_message(); }
其中異常時的回調函數有一個參數error,它是一個ASP.NET AJAX框架定義的一個對象,包含了異常信息。其中get_message()方法將返回異常信息字符串。
為了看效果,我們還要到WebService里搞一點破壞,讓請求出現異常,“破壞”后的WebService如下:
SayHelloService.cs: using System; using System.Web;using System.Collections; using System.Web.Services; using System.Web.Services.Protocols;using System.Web.Script.Services; [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [ScriptService]public class SayHelloService System.Web.Services.WebService{public SayHelloService() { } [WebMethod]public string SayHello(){ //Hello myHello = new Hello(); //return myHello.SayHello(); throw new Exception("我來搞破壞!"); } }
這里我們手工拋出了一個異常。下面運行程序,會得到如下結果:
如上圖,當出現異常時,不僅自動調用了異常處理回調函數,還很方便地取得了錯誤信息。
感謝各位的閱讀,以上就是“ASP.NET AJAX有什么用”的內容了,經過本文的學習后,相信大家對ASP.NET AJAX有什么用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。