说明(2017-11-5 15:49:29):
1. jQuery里封装了三个方法,$.get,$.post和$.ajax,其中$.ajax是返回原生的XMLHttpRequest对象,一般只用前两个。
2. $.get里面的回调函数有参数,第一个回调参数存有被请求页面的内容,第二个回调参数存有请求的状态。data存放的是请求压面里的context.Response.Write(userName + ":" + passWord)里的内容!!!
3. 麻蛋注释里都有我为毛还要再复制一遍!
Ajax_Get.aspx:
1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Ajax_Get.aspx.cs" Inherits="_06_Ajax.ajax" %> 2 3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 <html xmlns="http://www.w3.org/1999/xhtml"> 5 <head runat="server"> 6 <title></title> 7 </head> 8 <body> 9 <form id="form1" runat="server"> 10 <input type="button" name="name" value="显示用户" id="btnShow" /> 11 </form> 12 </body> 13 <script src="jquery1.11.3.js" type="text/javascript"></script> 14 <script type="text/javascript"> 15 $(function () { 16 $("#btnShow").click(function () { 17 //$.get,$.post和$.ajax,其中$.ajax是返回原生的XMLHttpRequest对象,一般只用前两个 18 //注意,$.get里面的回调函数有参数,第一个回调参数存有被请求页面的内容,第二个回调参数存有请求的状态。data存放的是请求压面里的context.Response.Write(userName + ":" + passWord)里的内容!!! 19 $.get("Ajax.ashx", { "userName": "wangwu", "passWord": "789" }, function (data, status) { 20 data = data.split(':'); 21 alert("用户名是:" + data[0] + " 密码是:" + data[1] + " 状态为:" + status); 22 }); 23 }) 24 }); 25 </script> 26 </html>
Ajax.ashx:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 6 namespace _06_Ajax 7 { 8 /// <summary> 9 /// ajax1 的摘要说明 10 /// </summary> 11 public class ajax1 : IHttpHandler 12 { 13 14 public void ProcessRequest(HttpContext context) 15 { 16 context.Response.ContentType = "text/plain"; 17 //string method = context.Request.HttpMethod();判断请求方式,get还是post 18 //get和post都发送到这个ashx页面,反正都是接受用户名和密码 19 string userName = context.Request["userName"]; 20 string passWord = context.Request["passWord"]; 21 //注意这里有个冒号,jQuery里才能用冒号把参数data分成两部分用户名和密码 22 context.Response.Write(userName + ":" + passWord); 23 } 24 25 public bool IsReusable 26 { 27 get 28 { 29 return false; 30 } 31 } 32 } 33 }