AJAX的书写方式整理

  
  
  
  
  1. 1.传统的JavaScript方法实现Ajax功能 
  2. var objXmlHttp = null;//声明一个空的XMLHTTP变量 
  3. function CreateXMLHTTP(){//根据浏览器的不同,返回该变量的实体对象 
  4.  if(window.ActiveXObject){ 
  5.    objXmlHttp= new ActiveObject("Microsoft.XMLHTTP"); 
  6.  }else
  7.    if(window.XMLHttpRequest){ 
  8.     objXmlHttp = new XMLHttpRequest(); 
  9.    } 
  10.    else
  11.     alert("初始化XMLHTTP错误!"); 
  12. function GetSendData(){ 
  13.   document.getElementById("divTip").innerHTML="<img alt='' titile='正在加载中...' src=\'#\'" /Loading.gif”/>";//初始化内容 
  14.   var strSendUrl ="b.html?date="+Date();//设置发送地址变量并赋初始值 
  15.   createXMLHTTP();//实例化XMLHttpRequest对象 
  16.   objXmlHttp.open("GET",strSendUrl,true);//open方法初始化xmlrequest 
  17.   objXmlHttp.onreadyStatechange=function(){//回调事件函数 
  18.   if(objXmlHttp.readyState==4){//如果请求完成加载 
  19.   if(objXmlHttp.status==200){//如果响应已成功 
  20.   document,getElementById("DivTip").innerHTML = objXmlHttp.responseText; 
  21.     } 
  22.   } 
  23. objXmlHttp.send(null);//send 发送设置的请求 
  24. 2.load()方法实现Ajax功能 
  25. $(function(){ 
  26.  $("#button1").click(function(){//按钮点击事件 
  27.    $("#divTip").load("b.html");//load()方法加载数据 
  28.   }) 
  29. }) 
  30. 3.getJson函数获取数据 
  31. $(function() { 
  32.             $("#Button1").click(function() { //按钮单击事件 
  33.                 //打开文件,并通过回调函数处理获取的数据 
  34.                 $.getJSON("UserInfo.json"function(data) { 
  35.                     $("#divTip").empty(); //先清空标记中的内容 
  36.                     var strHTML = ""//初始化保存内容变量 
  37.                     $.each(data, function(InfoIndex, Info) { //遍历获取的数据 
  38.                         strHTML += "姓名:" + Info["name"] + "<br>"
  39.                         strHTML += "性别:" + Info["sex"] + "<br>"
  40.                         strHTML += "邮箱:" + Info["email"] + "<hr>"
  41.                     }) 
  42.                     $("#divTip").html(strHTML); //显示处理后的数据 
  43.                 }) 
  44.             }) 
  45.         }) 
  46. 4.getScript函数获取数据 
  47. $(function(){ 
  48.  $("#button1").click(function(){//按钮单击事件 
  49.   $.getScript("UserInfo.js"); 
  50.  }) 
  51. }) 
  52. 5.get实现异步获取xml文档数据 
  53.  $(function() { 
  54.             $("#Button1").click(function() { //按钮单击事件 
  55.                 //打开文件,并通过回调函数处理获取的数据 
  56.                 $.get("UserInfo.xml"function(data) { 
  57.                     $("#divTip").empty(); //先清空标记中的内容 
  58.                     var strHTML = ""//初始化保存内容变量 
  59.                     $(data).find("User").each(function() { //遍历获取的数据 
  60.                         var $strUser = $(this); 
  61.                         strHTML += "姓名:" + $strUser.find("name").text() + "<br>"
  62.                         strHTML += "性别:" + $strUser.find("sex").text() + "<br>"
  63.                         strHTML += "邮箱:" + $strUser.find("email").text() + "<hr>"
  64.                     }) 
  65.                     $("#divTip").html(strHTML); //显示处理后的数据 
  66.                 }) 
  67.             }) 
  68. 6.$.get发送请求 
  69.    $(function() { 
  70.             $("#Button1").click(function() { //按钮单击事件 
  71.                 //打开文件,并通过回调函数返回服务器响应后的数据 
  72.                 $.get("UserInfo.aspx"
  73.                 { name: encodeURI($("#txtName").val()) }, 
  74.                 function(data) { 
  75.                     $("#divTip"
  76.                     .empty() //先清空标记中的内容 
  77.                     .html(data); //显示服务器返回的数据 
  78.                 }) 
  79.             }) 
  80.         }) 
  81. 7.$.post发送请求 
  82.   $(function(){ 
  83.     $("#button1").click(function(){//按钮单击事件 
  84.     $.post("User_Info.aspx",// 打开文件,并通过回调函数返回服务器响应后的数据 
  85.     {name:encodeURI($("#txtName").val()), 
  86.      sex;encodeURI($("#selSex").val()) 
  87. }, 
  88.   function(data){ 
  89.    $("#divTip"
  90.    .empty()// 先清空标记中的内容 
  91.    .html(data);// 显示服务器返回的数据 
  92.    }) 
  93.  }) 
  94. }) 
  95. 8.serialize()序列化表单 
  96. $(function() { 
  97.             $("#Button1").click(function() { //按钮单击事件 
  98.                 //打开文件,并通过回调函数返回服务器响应后的数据 
  99.                 $.post("User-Info.aspx"
  100.                 $("#frmUserInfo").serialize(), //序列化表单数据 
  101.                 function(data) { 
  102.                     $("#divTip"
  103.                     .empty() //先清空标记中的内容 
  104.                     .html(data); //显示服务器返回的数据 
  105.                 }) 
  106.             }) 
  107.         }) 
  108. 9.$.ajax()方法发送请求 
  109. $(function() { 
  110.             $.ajax({ //请求登录页 
  111.                 url: "login.html"//登录静态页 
  112.                 dataType: "html"
  113.                 success: function(HTML) { //返回页面内容 
  114.                     $("#frmUserLogin").html(HTML); //将页面内容置入表单 
  115.                     $("#btnLogin").click(function() { //“登录”按钮单击事件 
  116.                         //获取用户名称 
  117.                         var strTxtName = encodeURI($("#txtName").val()); 
  118.                         //获取输入密码 
  119.                         var strTxtPass = encodeURI($("#txtPass").val()); 
  120.                         //开始发送数据 
  121.                         $.ajax({ //请求登录处理页 
  122.                             url: "login.aspx"//登录处理页 
  123.                             dataType: "html"
  124.                             //传送请求数据 
  125.                             data: { txtName: strTxtName, txtPass: strTxtPass }, 
  126.                             success: function(strValue) { //登录成功后返回的数据 
  127.                                 //根据返回值进行状态显示 
  128.                                 if (strValue == "True") { 
  129.                                     $(".clsShow").html("操作提示,登录成功!"); 
  130.                                 } 
  131.                                 else { 
  132.                                     $("#divError").show().html("用户名或密码错误!"); 
  133.                                 } 
  134.                             } 
  135.                         }) 
  136.                     }) 
  137.                 } 
  138.             }) 
  139.         }) 
  140. 10.$.ajaxSetup()方法全局设置Ajax 
  141.  $(function() { 
  142.             $.ajaxSetup({ //设置全局性的Ajax选项 
  143.                 type: "GET"
  144.                 url: "UserInfo.xml"
  145.                 dataType: "xml" 
  146.             }) 
  147.             $("#Button1").click(function() { //"姓名”按钮的单击事件 
  148.                 $.ajax({ 
  149.                     success: function(data) { //传回请求响应的数据 
  150.                         ShowData(data, "姓名""name"); //显示"姓名"部分 
  151.                     } 
  152.                 }) 
  153.             }) 
  154.             $("#Button2").click(function() { //"性别”按钮的单击事件 
  155.                 $.ajax({ 
  156.                     success: function(data) { //传回请求响应的数据 
  157.                         ShowData(data, "性别""sex"); //显示"性别"部分 
  158.                     } 
  159.                 }) 
  160.             }) 
  161.  
  162.             $("#Button3").click(function() { //"邮箱”按钮的单击事件 
  163.                 $.ajax({ 
  164.                     success: function(data) { //传回请求响应的数据 
  165.                         ShowData(data, "邮箱""email"); //显示"邮箱"部分 
  166.                     } 
  167.                 }) 
  168.             }) 
  169.             /* 
  170.             *根据名称与值,获取请求响应数据中的某部分 
  171.             *@Param d为请求响应后的数据 
  172.             *@Param n为数据中文说明字符 
  173.             *@Param d为数据在响应数据中的元素名称 
  174.             */ 
  175.             function ShowData(d, n, v) { 
  176.                 $("#divTip").empty(); //先清空标记中的内容 
  177.                 var strHTML = ""//初始化保存内容变量 
  178.                 $(d).find("User").each(function() { //遍历获取的数据 
  179.                     var $strUser = $(this); 
  180.                     strHTML += n + ":" + $strUser.find(v).text() + "<hr>"
  181.                 }) 
  182.                 $("#divTip").html(strHTML); //显示处理后的数据 
  183.             } 
  184.         }) 
  185.     </script> 
  186. 11.Ajax中的全局事件 
  187.    $(function(){ 
  188. //元素绑定全局事件 
  189.    $("#divMsg").ajaxStart(function(){ 
  190.      $(this).show(); 
  191. }) 
  192.    $(#divMsg).ajaxStop(function(){ 
  193.      $(this).html("已成功获取数据。")hide(); 
  194. }) 
  195. //按钮单击事件 
  196. $("#Button1").click(function(){ 
  197.  $.ajax( 
  198.    type:"GET"
  199.    url:"GetData.aspx"
  200. //获取加码后的数据并作为参数传给服务器 
  201.     data:{txtData:encodeURI($("txtData").val()))}, 
  202.     dataType:"html"
  203.     success:function(data){ 
  204.       $("#divTip").html(decodeURI(data)); 
  205. }) 
  206. }) 
  207. }) 

 

你可能感兴趣的:(Ajax)