2012-04-17 43 views
0

我做要求:makeRequest的不工作

我收到的XML:

<?xml version="1.0" encoding="UTF-8"?> 
<search> 
<location id="18171" client_id="511"> 
<site>3</site> 
..... 

刷新浏览器后,我收到:

<?xml version="1.0" encoding="UTF-8"?> 
    </search> 

只有当我关闭和打开浏览器,我收到

<?xml version="1.0" encoding="UTF-8"?> 
    <search> 
    <location id="18171" client_id="511"> 
    <site>3</site> 

为什么?我不想关闭和打开浏览器每次

谢谢

我的代码:

function makeRequestXML(url) { 
    http_request = false; 

    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
     http_request = new XMLHttpRequest(); 
     if (http_request.overrideMimeType) { 
      http_request.overrideMimeType('text/xml'); 
     } 
    } else if (window.ActiveXObject) { // IE 
     try { 
      http_request = new ActiveXObject("Msxml2.XMLHTTP"); 
     } catch (e) { 
      try { 
       http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
      } catch (e) {} 
     } 
    } 

    if (!http_request) { 
     alert('Giving up :(Cannot create an XMLHTTP instance'); 
     return false; 
    } 
    http_request.onreadystatechange = ContentsXML; 
    http_request.open('GET', url, true); 
    http_request.send(null); 
} 

function ContentsXML() { 
    if (http_request.readyState == 4) { 
     if (http_request.status == 200) { 
      number_checkbox = 0; 
      var xmldoc = http_request.responseXML; 
+0

你的代码被切断了,你可以添加剩下的代码吗? – david 2012-04-17 21:37:54

回答

0

这与你要连接到服务器出现问题。我不知道它在做什么,或者你期望它在做什么,但是你的JS显然在所有情况下都会访问该服务器并返回数据。如果你收回不好的数据,那不是你JS的错。

似乎服务器可能正在发送基于浏览器会话的不同数据,并且重新启动浏览器可能会重置该会话。

+0

如何重置该会话?也许弹出? – Nick 2012-04-17 18:09:03

+0

这完全取决于您发送请求的服务器的工作方式。您可能可以删除一个cookie或其他东西,但很难在这里提出建议... – 2012-04-17 18:25:02

+0

我怎样才能控制服务器? – Nick 2012-04-17 21:00:18