强制IE在加载时重新下载文本文件

时间:2014-01-14 21:22:11

标签: javascript internet-explorer

我的JavaScript有一个关闭onload的函数,它接受一个.txt文件并从中创建一个数组。该页面在Chrome中工作正常,但在IE中不更新 - IE似乎缓存.txt文件并从缓存中重新创建数组,忽略对.txt所做的任何更新。有没有办法强制IE在创建数组之前重新下载.txt,以便用户不使用过时的信息版本?

编辑代码!! (更改了文件路径名,其他所有内容都相同)

function createArray() {
    var txtFile = new XMLHttpRequest();
    txtFile.open("GET", "http://PATHNAME/names.txt", true);
    txtFile.onreadystatechange = function() {
        if (txtFile.readyState === 4) {
            if (txtFile.status === 200 || txtFile.status === 0) {
                nameArray = txtFile.responseText.split("\n");
            }
        }
    };
    txtFile.send(null);
}

此外,该文件存储在服务器上,与显示数据的页面位于同一文件夹中,该文件位于JavaScripts文件夹上方一级。所以目录看起来像:

page.html
names.txt
SCRIPTS FOLDER
    array.js

1 个答案:

答案 0 :(得分:2)

获取请求缓存,强制它通过更改URL来获取新文件。

txtFile.open("GET", "http://PATHNAME/names.txt?ts=" + new Date().getTime(), true);