ASP.NET中JQuery+AJAX調(diào)用后臺
來源:易賢網(wǎng) 閱讀:941 次 日期:2016-08-10 15:54:06
溫馨提示:易賢網(wǎng)小編為您整理了“ASP.NET中JQuery+AJAX調(diào)用后臺”,方便廣大網(wǎng)友查閱!

這篇文章主要介紹了ASP.NET中JQuery+AJAX調(diào)用后臺的相關(guān)資料,需要的朋友可以參考下

做訂餐系統(tǒng)手機(jī)端時,遇到一個問題,實(shí)現(xiàn)登錄功能時,我要調(diào)用后臺的方法進(jìn)行驗(yàn)證和判斷。我們應(yīng)用的是webForm進(jìn)行開發(fā)的,正常情況下只要綁定按鈕的方法,前后臺對應(yīng)就可以實(shí)現(xiàn)。但是,手機(jī)端應(yīng)用MUI樣式之后,就不適用于這種情況了?;谶@個問題,我們使用JQuery+Ajax技術(shù),其實(shí)MUI中也自帶ajax技術(shù)。

實(shí)現(xiàn)過程:

webForm代碼:

function login() {       

      var name = document.getElementById("username").value; //獲取用戶名 

      var password = document.getElementById("userpassword").value; //獲取密碼 

      var params = '{name:"' + name + '",password:"' + password + '"}'; //將用戶名和密碼作為參數(shù)傳過去 

      $.ajax({ 

        url: "LoginMobile.aspx/test", //調(diào)用后臺方法 

        data: params, 

        type: "post", 

        dataType: 'text', 

        contentType: "application/json; charset=utf-8", //設(shè)置類型,注意一定不能丟 

        success: function (data) {           

          if (data == '{"d":true}') { //注意判斷條件 

            window.location = "../Order/OrderMobile.aspx"; 

          } else {             

            mui.toast("用戶名或密碼錯誤!");             

          } 

        } 

      }); 

    } 

后臺代碼:      

[WebMethod] 

    public static bool test(string name,string password) { 

      //實(shí)例化登錄業(yè)務(wù)邏輯類 

      CardBll cardBll = new CardBll(); 

      userBll user = new userBll(); 

      Page page = (Page)System.Web.HttpContext.Current.Handler; 

      bool Flag = false; 

      //一般用戶 

      if (name.Length > 5) 

      { 

        Flag = cardBll.isExist(name, password); 

        if (Flag == true) 

        { 

          System.Web.HttpContext.Current.Session["Admin"] = name; 

          //Session["Admin"] = name; 

          //Session["Username"] = cardBll.username(TxtName .Text .Trim (),TxtPassword.Text .Trim ()); 

          System.Web.HttpContext.Current.Session["Username"] = cardBll.username(name); 

          System.Web.HttpContext.Current.Session["cardLevel"] = cardBll.cardLevel(name); 

          if (System.Web.HttpContext.Current.Session["cardLevel"].ToString() == "普通用戶") 

          { 

           Flag = true; 

          } 

        }        

      } 

      return Flag; 

    } 

特別注意:

1、在webForm頁面試用Ajax技術(shù)調(diào)用后臺方法時,一定要加上contentType: "application/json; charset=utf-8"。否則,就無法調(diào)用后臺方法。type類型為“Post”。

2、后臺方法中

第一,后臺的方法必須是靜態(tài)的;

第二,方法聲明要加上特性[System.Web.Services.WebMethod()];

第三,傳遞的參數(shù)個數(shù)也應(yīng)該和方法的參數(shù)相同。

當(dāng)然,也可以使用mui中自由的ajax技術(shù),其使用方法跟平常的ajax沒有多大的區(qū)別,只是書寫的形式有點(diǎn)不一樣,使用MUI實(shí)現(xiàn)的界面形式如下:     

mui.ajax('LoginMobile.aspx/test', { 

        data: params, 

        dataType: 'text', 

        type: 'post', 

        contentType: "application/json; charset=utf-8", 

        success: function (data) {           

           if (data == '{"d":true}') { 

            window.location = "../Order/OrderMobile.aspx"; 

          } else {             

            mui.toast("用戶名或密碼錯誤!");             

          } 

        } 

      })

      ajax技術(shù)對于前后臺之間的交互也是一種不錯的方式,靈活運(yùn)用會給我們帶來巨大的幫助。當(dāng)然也要根據(jù)不同的環(huán)境進(jìn)行不同的設(shè)置與使用。

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:ASP.NET中JQuery+AJAX調(diào)用后臺
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)