首页 > 代码库 > 异步初体验
异步初体验
昨天又学到了新的知识了AJax AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。这是百度到的东西 好处:通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页面。
很早以前就听说过这个东西了,听起来很高大上的啊!
我觉得就是,为一个按钮注册一个事件,当点击的时候就使用一个新的线程去访问后台,然后再根据得到返回结果继续下面的逻辑。
其实说起来,AJAX就是一段JavaScript代码
1 <script src="http://www.mamicode.com/JS/jquery-1.8.2.js"></script> 2 <script type="text/javascript"> 3 $(function () { 4 $("#btnLogin").click(function() { 5 $.get("PLogin.ashx", { 6 UserName: $("#txtClientID").val(), 7 Pwd: $("#txtPassword").val(), 8 Code: $("#txtCode").val() 9 }, function(data) {10 if (datahttp://www.mamicode.com/=="ok") {11 window.location.href = "http://www.mamicode.com/Main.aspx";12 } else {13 alert(data);14 }15 });16 });17 });
首先是引入jQuery,其实直接用JavaScript就能实现了,不过jQuery给我们封装好了,用起来很爽
为按钮注册点击事件,方法里使用 $.get() 或 $.post()
这两个方法在jQuery中使用起来没有任何区别,都是有三个参数
第一个:需要请求的地址
第二个:JSON格式的键值对,是传到后台的参数
第三个:传一个方法进去,方法有一个参数,就是用来接收后台返回的数据的,方法体中就是根据返回的数据实现接下来的逻辑的。
下面再贴一段我的那个一般处理程序的代码:
1 public class Login1 : IHttpHandler,IRequiresSessionState 2 { 3 4 public void ProcessRequest(HttpContext context) 5 { 6 context.Response.ContentType = "text/plain"; 7 string UserName = context.Request["UserName"]; 8 string Password = context.Request["Pwd"]; 9 string ValidateCode = context.Request["Code"];10 11 //验证码校验12 string ServerCode = context.Session["ValidateCode"] == null13 ? string.Empty14 : context.Session["ValidateCode"].ToString();15 if (ServerCode == string.Empty || ValidateCode != ServerCode)16 {17 //校验失败18 context.Response.Write("验证码校验失败");19 }20 else21 {22 BLL.HKSJ_USERS bll = new HKSJ_USERS();23 List<Model.HKSJ_USERS> list= bll.GetModelList(string.Format(" LoginName=‘{0}‘ and PassWord=‘{1}‘ ", UserName, Password));24 if (list.Count>=1)25 {26 context.Session["LoginUser"] = list[0];27 context.Response.Write("ok");28 }29 else30 {31 context.Response.Write("登陆失败");32 }33 }34 35 36 }37 38 public bool IsReusable39 {40 get41 {42 return false;43 }44 }
需要注意的是,因为在一般处理程序中使用了Session,所以在这个类实现的接口需要加上IRequiresSessionState这个接口
异步初体验
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。