1

我正在使用此代码来读取文件。Chrome 和 FF 一切正常,但 IE 不更新文件中的数据……似乎是从缓存中读取???有什么建议么?谢谢

if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","YOUR_FILE.txt",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseText;
4

2 回答 2

3

您可以尝试在文件名末尾添加动态字符串参数以防止缓存。

试试这个:

var time = new Date().getTime();
xmlhttp.open("GET", "YOUR_FILE.txt?time=" + time, false);

查看 Javascript 的Date.getTime()文档。

于 2013-04-06T22:25:08.027 回答
0

请参阅http://msdn.microsoft.com/en-us/library/ms537505(v=vs.85).aspx
Microsoft 建议的代码略有不同:

var xmlHttp = null;
if (window.XMLHttpRequest) {
  // If IE7, Mozilla, Safari, and so on: Use native object.
  xmlHttp = new XMLHttpRequest();
}
else
{
  if (window.ActiveXObject) {
     // ...otherwise, use the ActiveX control for IE5.x and IE6.
     xmlHttp = new ActiveXObject('MSXML2.XMLHTTP.3.0');
  }
}
于 2013-04-06T22:35:28.227 回答