下面是一個登陸頁面調用的EXTJS
login function,通過 url: '/UI/HttpHandlerData/Login/Login.ashx',獲取返回登陸賬戶和密碼!
Ext.onReady(function () { login = function (target) { if (eval(document.getElementById('TxtUserName')).value == "") { alert("提示! 請輸入賬戶!"); return false; } else if (eval(document.getElementById('TxtPassword')).value == "") { alert("提示!請輸入密碼!"); return false; } else { var username = eval(document.getElementById('TxtUserName')).value; var password = eval(document.getElementById('TxtPassword')).value; Ext.Ajax.request({ url: '/UI/HttpHandlerData/Login/Login.ashx', method: 'POST', clientValidation: true, waitMsg: '正在提交數據...', waitTitle: '提示', params: { username: username, password: password }, success: function (response) { var data = Ext.decode(response.responseText); //設置Cookie new Extjs.cookie.set(data.userid, data.username); window.location.href = "../Page/InformationManagement/Index.html"; }, failure: function () { Ext.Msg.alert("提示", "登陸失敗,請與管理員聯系!"); } }); } } });
后台代碼:
這是在一般處理程序中的代碼:
public void ProcessRequest(HttpContext context) { string username = context.Request.Form["username"]; string password = context.Request.Form["password"]; int intUserID = 0; DataSet ds = saBLL.Login(username, password); //客戶端輸出變量 string strResult = string.Empty; if (ds.Tables[0].Rows.Count > 0) { //用戶不存在 if (ds == null) strResult = "{success:true,flag:false,msg:'用戶不存在!'}"; //用戶密碼不正確 else if (ds.Tables[0].Rows[0]["Password"].ToString() != password) strResult = "{success:true,flag:false,msg:'用戶密碼不正確!'}"; //正確 else { intUserID = Convert.ToInt32(ds.Tables[0].Rows[0]["AccountId"].ToString()); strResult = "{success:'true',flag:'true',userid:'" + intUserID + "',username:'" + ds.Tables[0].Rows[0]["LoginName"] + "'}"; } } else { strResult = "{success:true,flag:false,msg:'用戶不存在!'}"; } //客戶端輸出 context.Response.Write(strResult); }