Asp.net 登陆页面的Ajax异步身份验证的实现
来源:互联网 发布:网络机顶盒软件大全 编辑:程序博客网 时间:2024/06/07 05:25
先把js脚本写出来:
<script type="text/javascript"> function ValidForm() { if (!$('#commentForm').valid()) return false; else return true; } function PostData() { if (ValidForm()) { var uName = $('#username').val(); var pwd = $('#password').val(); $.ajax( { url: 'Services/Login.ashx', data: { username: uName, password: pwd }, type: 'post', dataType: 'json', success: function (data) { if (data.Code == 200) { window.location = 'Default.aspx'; } else { $('#spError').show(); $('#spError').text(data.Message); } }, error: function (xhr, e, textStatus) { var isAjaxRedirect = xhr.status == 200 && xhr.responseText.match(/!expire/); if (isAjaxRedirect == '!expire') { $('#spError').text('提交错误,页面超时请重试!'); } else $('#spError').text('提交错误,请重试!'); } }); } } </script>
<div class="lg_form"> <div class="lg_con"> <div class="lg_land_name"> 请登录 <span class="field-validation-error" style="display:none;" id="spError"></span></div> <form class="cmxform" id="commentForm" method="post" action=""> <div class="lg_form_cn"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr valign="top"> <td width="20%" align="right"> <span class="email_pad">用户名</span> </td> <td width="74%"> <input class="ttext ipt1 {required:true,messages:{required:'请输入用户名'}}" id="username" name="username" type="text" value="" /> </td> <td width="6%"> </td> </tr> <tr valign="top"> <td align="right"> <span class="email_pwl">密</span><span class="email_pwr">码</span> </td> <td> <input class="ttext ipt1 {required:true,messages:{required:'请输入密码'}}" id="password" name="password" type="password" value="" /> </td> <td> </td> </tr> </table> </div> <input name="repc" type="hidden" value="false" /> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="30%"> </td> <td width="25%" height="80"> <input type="button" class="free_btn3" value="登 录" onclick="PostData()"/> </td> <td width="45%"> </td> </tr> </table> </form> </div> </div>
然后是服务器端的C#验证:Login.ashx
/// <summary> /// Login 的摘要说明 /// </summary> public class Login : IHttpHandler { public void ProcessRequest(HttpContext context) { ResponseResult result; string name = context.Request["username"]; string password = MD5.getMd5(context.Request["password"]); UserLogic logic = new UserLogic(); bool right = logic.Login(name, password); if (right == true) { result = new ResponseResult { Code = 200, Message = "验证成功!" }; } else { result = new ResponseResult { Code = 400, Message = "用户名或者密码错误!" }; } context.Response.Write(JsonConvert.SerializeObject(result)); } public bool IsReusable { get { return false; } } }
讨论:
<input type="button" class="free_btn3" value="登 录" onclick="PostData()"/>type="submit" 和 type="button"的区别是什么?Ok,看到这里,想必就明白了吧。
- Asp.net 登陆页面的Ajax异步身份验证的实现
- AJAX实现异步提交登陆达到页面友好的效果
- ASP.NET安全身份验证的实现
- ASP.NET安全身份验证的实现
- Asp.net的身份验证
- Asp.net的身份验证
- Asp.net的身份验证
- Asp.net的身份验证
- Asp.net的身份验证
- Asp.net的身份验证
- Asp.net的身份验证
- ASP.NET的身份验证
- Asp.net的身份验证
- asp.net ajax 调用页面方法实现异步操作
- asp.net的身份验证方式
- asp.net的身份验证方式
- Asp.net的身份验证详解
- Asp.net的身份验证详解
- 卡尔曼滤波的通俗讲解
- Android NDK编程入门
- iphone--UIImageView响应点击事件
- 九宫八阵图之虐翼阵——网闸
- iphone--UIViewController/UITabBarController和UINavigationController的结合
- Asp.net 登陆页面的Ajax异步身份验证的实现
- 只读EditText内容可滚动(禁止输入法)的实现
- iphone--UIViewController与UIView的关系
- iphone--给视图做修饰
- GSM手机、CDMA手机、3G手机、4G手机
- iphone--自定义UINavgationBar
- 通过bShare分享按钮分享自己的站点
- iphone--release相关
- 华为赛门铁克UTM+防病毒技术