代码如下:
<html>
<head>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<script type="text/javascript">
var hq;
var _script;function setcheck()
{
 sUrl="http://127.0.0.1/result.php";
 
 _script = document.createElement('script')
 _script.setAttribute("type", "text/javascript");
 _script.setAttribute("src",sUrl);
 _script.setAttribute("charset", "gb2312")
 document.getElementsByTagName("head")[0].appendChild(_script) setTimeout("check()",1000);
 return; 
}
function check()
{ trace.innerHTML+="<br>"+hqr;
 document.getElementsByTagName("head")[0].removeChild(_script)
}
</script>
</head>
<body>
<input   type= "button"   value= "单次启动"   onclick= "setcheck();" style="display:yes;"><br>
<SPAN ID="trace" style="text-align:left">信息:</SPAN>
</body>
</html>
其中http://127.0.0.1/result.php会返回
var hqr=7
每访问一次后面就会加1。
上面代码不能实现这个功能,始终得到变量7。请问怎么实现我的目的,谢谢。

解决方案 »

  1.   

    应该变化如果直接用浏览器访问第一次var hqr=1第二次var hqr=2;实际也如此,但是通过上面代码不变
      

  2.   

    虚心求教,result.php返回的hqr值经常变化的,我想通过js检测到,作了上面代码,但是每次刷新iframe的时候不能检测到,只能通过刷新整个页面,但这不是我要求的,谢谢
      

  3.   

    是你的settimeout在请求的时候才执行一次
    而不是说1秒钟刷新一次啊
      

  4.   

    没错,这个代码我简化了,就是想每次按按钮的时候,能检测到result.php中hqr的变化。settimeout的目的是延迟一秒之后再检测,主要是想等result执行完毕。在真正的程序中,不是每次按按钮,是用了setInterval("setcheck()",tmp);的。但是现在按了按钮,感觉result.php给调用,因为hqr值一直不变,我的qq是52631如果方便加入我,向您请教
      

  5.   

    你的ajax请求有问题
    我没有IM起码我没看到你的xmlHttpRequest对象
      

  6.   

    // 动态导入js
    function include(src,encoding,fun) 

        var s = document.createElement('script');   
        s.type='text/javascript';
        s.charset=encoding; //'gb2312';
        s.src = src;   
        var tags =document.getElementsByTagName('head');   
       if(typeof(fun)=='function'){
            if( document.all ){
               s.onreadystatechange = function(){
                    if(/(complete|loaded)/.test(this.readyState)){
                          fun(); s.onreadystatechange = null; s.parentNode.removeChild(s); 
                     }};
           }else{
                 s.onload = function(){  fun(); s.onload = null; s.parentNode.removeChild(s); };
           }
        } 
        tags[0].appendChild(s); 
    };include("http://127.0.0.1/result.php",“gb2312”,function(){alert(hqr);});
      

  7.   

    还是不行,提示的内容不便,代码改为如下
    <html>
    <head><script type="text/javascript">function include1(src,encoding,fun) 

     alert("here");
      var s = document.createElement('script');  
      s.type='text/javascript';
      s.charset=encoding; //'gb2312';
      s.src = src;  
      var tags =document.getElementsByTagName('head');  
      if(typeof(fun)=='function'){
      if( document.all ){
      s.onreadystatechange = function(){
      if(/(complete|loaded)/.test(this.readyState)){
      fun(); s.onreadystatechange = null; s.parentNode.removeChild(s); 
      }};
      }else{
      s.onload = function(){ fun(); s.onload = null; s.parentNode.removeChild(s); };
      }
      } 
      tags[0].appendChild(s); 
    };</script></head>
    <body><input   type= "button"   value= "新版启动"   onclick= "include1('http://127.0.0.1:8088/tixing/result.php','gb2312',function(){alert(hqr);});" style="display:yes;"><br></body>
    </html>
    result.php功能就是显示var hqr=1,等号后面每次访问加1,这个代码是简化的。我只是向通过简单的js得到hqr现在是多少,然后处理。hqr是经常变化的