返回列表 回复 发帖

Ajax应用遇到的问题?

在index.jsp文件中应用Ajax,在发送请求的方法中调用“s2.jsp”,
想实现每秒钟发送一次请求,所以在程序中使用setInterval()方法。
具体代码如下:
<script type="text/javascript">
           var req=false;//异步请求提交对象
           //1、初始化异步请求提交对象
           function init(){
             if(window.ActiveXObject){
             //IE
             req=new ActiveXObject("Microsoft.XMLHTTP");
             } else{
               //firefox
               req=new XMLHttpRequest();
             }
            // alert(req);
           }
           //发送请求
           function sendReq(){
             init();
             var name=document.getElementById("name").value;
             //2、指定处理返回值的函数
             req.onreadystatechange=process;
             //3、打开到资源的连接
            // req.open("get","s2.jsp?name="+name);
            //req.open("get","x.txt");
            req.open("get","ts");
             //4、发送请求
             req.send(null);
           }
           //5、处理返回值
           function process() {
             //获取返回值
             var v=req.responseText;
             //alert(v);
             var d=document.getElementById("d");
             d.innerHTML=v;
           }
           //----------------------------------------
           //发送请求
           function sendReq2() {
             init();
             var sheng=document.getElementById("sheng").value;
             //2、指定处理返回值的函数
             req.onreadystatechange=process2;
             //3、打开到资源的连接
            req.open("get","ts2?sheng="+sheng,true);
             //4、发送请求
             req.send(null);
           }
           //5、处理返回值
           function process2(){
             if(req.readyState==4)
             {
              if(req.status==200)
              {
              var shi=document.getElementById("shi");
             
             //获取返回值
             var v=req.responseXML;
             var root=document.getElementsByTagName("shi");
             for(var i=0;i<root.length;i++){
             var op=document.createElement("option");
             op.innerText=root[i].firstChild.data;
             shi.appendChild(op);
             }
             
              }
             }
           }
        </script>
                setInterval(sendReq,1000);//每1000毫秒调用一次sendReq方法
但是具体应用时,为什么并不是每秒调用sendReq方法,而只向a.jsp请求一次,就不再请求了呢?
返回列表