博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习ajax
阅读量:4519 次
发布时间:2019-06-08

本文共 2368 字,大约阅读时间需要 7 分钟。

学了一天的ajax,学的懵懵懂懂的啊。

下面是我学到的东西:

1:ajax与服务器端语言无关,包含了8种技术,分别为:javascript,xml,xstl,xhtml,dom,css,xmlhttprequest。(现在还不懂什么是xstl,对xmlhttprequest的概念也模模糊糊)。

2:ajax给服务端返回三种格式的数据,分别为文本格式,xml格式,json格式。未知浏览器的情况下用xml格式,否则尽量选用json格式,它的扩展性极好。

3:无刷新的数据交换技术有:ajax,flash,框架,iframe。后两个同源。

4:然后就是ajax的工作原理了:

  a:创建ajax引擎:(不同的浏览器创建XMLHttpRequest对象的方法是有差异的,有两种方法)

    a1:使用js 的try..catch..  

  function getXmlHttp()

     { var xmlHttp;

      try{

          //firefox,oprea ,safari

          xmlHttp=new XMLHttpRequest();}

      catch(e){

          //internet Explorer

          try{

              xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}

          catch(e){

            try{

                  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}

          catch(e){

              alert("您的浏览器不支持AJAX!");

              return false;}

      } }

} }

 

      a2:有更简单但不是很规范的方法:

        function getxmlHttpObject(){

          var xmlHttpRequest

          if(window.ActiveXObject){xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");}else

            {xmlHttpRequest=new XmlHttpRequest();}

              return xmlHttpRequest;

                      }

 

5:ajax经典案例—无刷新验证用户名(get):

ajax 模板代码

var http_request;

function sendHttpRequest(){

 if(window.ActiveXObject){ http_request=new ActiveXObject(“Microsoft.XMLHTTP”); }

 else{http_request=new XMLHttpRequest();}

 if(http_request){var url=“发送请求给php”;

   http_request.open(“GET”,url,true); //如果 设为false表示同步,这样可以直接在if使用 http_request.responseText

   http_request.onreadystatechange=chuli;

   http_request.send(); 

 }

}

function chuli(){

 if(http_request.readyState==4){

   if(http_request.status==200){var res=http_request.responseText; //返回的是文本

   根据返回的文本做相应的处理即可}  

 }}

6:无刷新验证用户名(post)

ajax 模板代码

var http_request;

function sendHttpRequest(){

 if(window.ActiveXObject){ http_request=new ActiveXObject(“Microsoft.XMLHTTP”); }

 else{http_request=new XMLHttpRequest();}

 if(http_request){var url=“发送请求给servlet或action”;

   http_request.open(“POST",url,true);

   http_request.setRequestHeader(“Content-Type”,”application/x-www-form-urlencoded”);

   http_request.onreadystatechange=chuli;

   http_request.send(“name=hsp&email=kk@sohu.com”); 

 }

}

function chuli(){

 if(http_request.readyState==4){

   if(http_request.status==200){var res=http_request.responseText; //返回的是文本

   根据返回的文本做相应的处理即可}  

 }}

 

 

 

 

 

我学习的是韩顺平老师讲的ajax,感觉很深奥,我上面总结的有错误的地方,望指正。

 

 

 

 

转载于:https://www.cnblogs.com/bellapengjie/archive/2012/07/20/2601504.html

你可能感兴趣的文章
\Process(sqlservr)\% Processor Time 计数器飙高
查看>>
JVM讲解
查看>>
ServletConfig讲解
查看>>
struts2配置默认Action
查看>>
EA类图与代码同步
查看>>
Spring集成MyBatis01 【推荐使用】、springMVC中文乱码和json转换问题
查看>>
Android Studio 智能感知无效
查看>>
vs2005/vs2008 快捷键【转】
查看>>
javascript 日常
查看>>
Android打开相机进行人脸识别,使用虹软人脸识别引擎
查看>>
打印沙漏
查看>>
腾讯物联TencentOS tiny上云初探
查看>>
nginx 安装
查看>>
C#中upd分包与发送,已经实现全部代码
查看>>
让插件帮你优化代码
查看>>
学习笔记3
查看>>
LeetCode 20. Valid Parentheses
查看>>
LeetCode 4 Keys Keyboard
查看>>
bean找不到异常
查看>>
重拾Javascript基础(三) - DOM属性&方法
查看>>