asp.net下ajax.ajaxMethod使用方法

字號:


    使用AjaxMethod可以在客戶端異步調(diào)用服務(wù)端方法,簡單地說就是在JS里調(diào)用后臺.cs文件里的方法,
    做一些JS無法做到的操作,如查詢數(shù)據(jù)庫
    使用AjaxMethod要滿足一下幾點(diǎn):
    1。如果還沒有ajax.dll文件,就先下載一個(gè)來
    2。將ajax.dll添加到項(xiàng)目引用中:在VS的解決方案資源管理器中右鍵點(diǎn)擊項(xiàng)目名稱--“添加項(xiàng)目引用
    ”--瀏覽,找到ajax.dll確定 
    3。webCofig中<httpHandlers>加上<add verb="POST,GET" path="ajax/*.ashx" 
    type="Ajax.PageHandlerFactory, Ajax"/>節(jié)點(diǎn) 
    如果是IIS7,則需要在<system.webServer></system.webServer>里的handlers節(jié)點(diǎn)里加上<add 
    name="ajax" verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" /> 
    名單
    2:在CS程序中加上 
    protected void Page_Load(objectsender,EventArgse) 
    { 
    Ajax.Utility.RegisterTypeForAjax(typeof(ClassName));//ClassName是這個(gè)CS文件的類名 
    } 
    3:編寫CS方法,方法前加上[Ajax.AjaxMethod()], 
    如果要使AjaxMethod里面能調(diào)用session,寫成:[Ajax.AjaxMethod
    (HttpSessionStateRequirement.Read)] , 
    如: 
    復(fù)制代碼
    代碼如下:
    [Ajax.AjaxMethod()] 
    public string GetAddress(string UserID) 
    { 
    string Address=""; 
    //do somthing to get the address here 
    return Address; 
    } 
    注意方法要寫成public,否則在JS里調(diào)用的時(shí)候會提示“不支持此屬性或方法” 
    4。確保頁面中有<form runat="server"></form>標(biāo)簽。 
    5。ASPX的JAVASCRIPT中調(diào)用時(shí)加上類名