博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day28(ajax之js原生代码实现)
阅读量:7237 次
发布时间:2019-06-29

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

  ajax

      ajax:异步页面无刷新技术

AJAX:异步的 JavaScript And XML.    * 使用的是老的技术,用的是新的思想.	AJAX的功能:完成页面的局部刷新,不中断用户的体验.        XML:使用XML做为数据传递的格式: JSON:

    异步与同步的区别:

      同步(安全,效率低):同步指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系。

        页面2会一直等待着页面1的响应,没有响应则会一直等待,直到超时。

      异步(不安全,效率高):两个或两个以上的时间在发生的过程中没有时间的限制。页面的局部请求,

       局部2不用等待局部1的响应,可以继续请求。

  xmlHttpRequest对象

XMLHttpRequest 对象用于在后台与服务器交换数据。XMLHttpRequest 对象是开发者的梦想,因为您能够:    在不重新加载页面的情况下更新网页    在页面已加载后从服务器请求数据    在页面已加载后从服务器接收数据    在后台向服务器发送数据

   xmlHttpRequest对象的属性

      1.readyState    :xmlHttpRequest的状态

      2.onreadyStateChange  当readyState的状态码改变时会触发函数

      3.status  获得相应的状态码

      4.responseText 获得响应的文本数据 

      5.responseXml 获得响应的xml数据

   xmlHttpRequest对象的方法

    open(请求方式,请求路径,是否异步)          :异步去向服务器发送请求.

    send(请求参数)                                         :发送请求

    setRequestHeader(头信息,头的值)           :处理POST请求方式的中文问题

   创建xmlHttpRequest对象的方式

      由于各个浏览器的内核都不一样,对于创建xmlHttprequest创建方式都不同。

        IE           :将XMLHttpRequest对象封装在一个ActiveXObject组件.

        Firefox   :直接就可以创建XMLHttpRequest对象

function createXmlHttp(){   var xmlHttp;   try{ // Firefox, Opera 8.0+, Safari        xmlHttp=new XMLHttpRequest();    }    catch (e){	   try{// Internet Explorer	         xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");	      }	    catch (e){	      try{	         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");	      }	      catch (e){}	      }    }	return xmlHttp; }

  

   ajax(js的实现步骤)

    1.创建一个异步对象(创建xmlHttprequest对象)

      使用上面的方法来创建 var xhr=createXmlHttp();

    2.设置对象状态改变的函数

   xhr.onreadystatechange=function(){        //判读状态码是否是4(4:表示数据已经接受完毕)        if(xhr.readystate==4){         //判断是否响应成功  判断响应状态码是否是200            if(xhr.status==200){            //说明响应成功  获取数据              var  data=xhr.responseText();//获取响应的文本            }         }      }

    3.设置项后台提交数据的路径

       get请求   

      xhr.open("GET","/day15/ServletDemo1?name=aaa&pass=123",true);//需要在路径后面进行携带数据

      Post请求

     xhr.open("POST","/day15/ServletDemo1",true);      //修改乱码        xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

    4.发送请求

      get请求

     xhr.send(null);

      post请求

xhr.send("name=张三&pass=123");

转载于:https://www.cnblogs.com/fjkgrbk/p/ajax_js.html

你可能感兴趣的文章
程序员测试微信小程序后,发现这群人才能赚到钱
查看>>
Facebook的算法缺陷与扎克伯格的媒体窘迫
查看>>
Cat.0实现更低功耗、更低成本物联网设备连接到LTE网络
查看>>
在外面吃饭,你会用开水烫餐具吗?事实太吓人了!
查看>>
DBImport V3.1 数据互导工具及文档生成器更新发布
查看>>
欧盟与美国的个人数据传输保护协议尘埃落定
查看>>
成都大数据三大平台正式上线
查看>>
华为与GE建立战略合作伙伴关系,加速工业物联网联合创新
查看>>
完善机制强化安全保障能力建设
查看>>
CIO访谈实录:英国电讯媒体集团首席信息官亨利·科恩
查看>>
微软称赞Windows Defender,卡巴斯基则嘲笑其没用
查看>>
浅谈软件测试用例
查看>>
每家企业应该知道的10家SaaS初创公司
查看>>
各种JDBC连接数据库的常用代码
查看>>
得大数据者得量化投资
查看>>
颠覆传统 微服务器剑指数据中心
查看>>
UCSB研发量子传感技术,具备纳米级别的空间分辨率
查看>>
智慧城市,美好生活刚开始
查看>>
混合云中如何阻断I/O瓶颈?
查看>>
Linux 64位操作系统安装配置java
查看>>