解決ASP.NET AJAX腳本的錯誤問題
1. 畫面遷移應該使用執(zhí)行畫面重定向的Response.Redirect而不是Server.Transfer,因為Server.Transfer不改變IE客戶端URL,會導致ASP.NET AJAX腳本訪問資源的時候出現(xiàn)URL錯誤。
2.在服務(wù)器端注冊腳本和隱藏字段應該使用類ScriptManager,而不是Page.ClientScript對象,因為Page.ClientScript的方法是將腳本注冊給全局對象,會導致如果進行局部更新,這些腳本不會送到客戶端,而ScriptManager的方法正相反。ScriptManager類不管畫面上有沒有ScriptManager控件都可以使用。
3.把要進行局部更新的事件源控件和要進行的控件都放入到UpdatePanel中,如果只是被更新的控件放在UpdatePanel中,而事件源控件在UpdatePanel外一樣會觸發(fā)回發(fā)事件刷新屏幕。
4.把更新時涉及到的隱藏字段和隱藏控件也都放到UpdatePanel中。如果隱藏字段不放到UpdatePanel中,更新的時候就無法修改它的值,同理要操作的隱藏控件不在UpdatePanel中也無法對其進行操作。
5.ASP.NET AJAX的腳本方法要在ScriptManager標簽之后執(zhí)行,因為放置ScriptManager的地方才是植入ASP.NET AJAX腳本庫的地方,這也就意味著在此之前的代碼是無法訪問腳本庫方法的。
6.注意處理Sys.WebForms異常,因為這些異常會帶來讓人無法真正理解的錯誤,需要屏蔽的時候應該屏蔽。
【編輯推薦】