加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax应用实现

发布时间:2020-12-16 02:01:21 所属栏目:百科 来源:网络整理
导读:创建XMLHttpRequest,因为windows操作系统可能不一样所以调用不同的创建方式: //创建XMLHttpRequest function createXMLHttpRequest () { if (window.ActiveXObject){ xmlHttp= new ActiveXObject( "Microsoft.XMLHTTP" ); } else if (window.XMLHttpReques

创建XMLHttpRequest,因为windows操作系统可能不一样所以调用不同的创建方式:

//创建XMLHttpRequest
  function createXMLHttpRequest(){
      if(window.ActiveXObject){
         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
         }
      else if(window.XMLHttpRequest){
          xmlHttp=new XMLHttpRequest();
       }
  }

这里我在服务器端的servlet-mapping为

<servlet-mapping>
    <servlet-name>GetBusInformation</servlet-name>
    <url-pattern>/GetBusInformation</url-pattern>
  </servlet-mapping>

所以接下来的url我需要设置为url=”GetBusInformation?timeStamp=”+new Date().getTime();
“+”号后面的为传递的参数

//最原始的实时调度调用函数,为发出请求调用的函数,点击按钮的时候开始执行,执行open后才会再次进入handleStateChange()这个方法,执行send后会再次进入handleStateChange()这个方法,
  //这个时候xmlHttp.readyState会一直往后执行,一直到状态4为止,这时数据就返回了。
  function startRequest(){

     var url="GetBusInformation?timeStamp="+new Date().getTime();
     createXMLHttpRequest();
     xmlHttp.onreadystatechange=handleStateChange;//设置返回值处理函数
     xmlHttp.open("POST",url,true);
     xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
     xmlHttp.send(null);
  }

如果一切进展顺利会执行下面这个函数:

//每当 XMLHTTP 对象的状态发生改变时,handleStateChange() 函数就会执行。
  function handleStateChange(){
    if(xmlHttp.readyState==4){
     if(xmlHttp.status==200){
       listAllBus();
    }
   }
  }

下面的 listAllBus()就是接收XML文件

//车辆的实时显示
//定义var latitude=new Array()的地方。
 function listAllBus(){
 //到底是获取的哪里的值
  var xmlDoc=xmlHttp.responseXML;
  var allBusInfo=xmlDoc.getElementsByTagName("Location");
  outputList("All Bus information in Document",allBusInfo);
 }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读