提问者:小点点

加载文本文件到javascript数组[重复]


我正在写我自己的库,我有一个文本文件,我需要加载到一个变量。我知道我可以使用Jquery来实现这一点,但我真的很想知道如何使用java脚本本机实现这一点。我找不到任何好的资源,所以我来了:/

那么我如何用javascript替换这段代码呢?

$('#result').load('txt.txt', function() {
  alert('Load was performed.');
});

我实际上需要文本是一个变量,而不是一个元素。


共1个答案

匿名用户

非常简单,它看起来是这样的:

var oReq = new XMLHttpRequest();

oReq.open("GET", 'txt.txt', true);
oReq.onload = function(e) {
  var myText = oReq.responseText; 
  /* ... */
}
oReq.send();

不过还有更多的问题,因为您需要考虑网络超时、NIC不可用的可能性(例如WiFI关闭)、服务器错误等。jQuery确实有助于解决这些问题。

查看更多信息的一个资源是:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

更新:

小提琴示例:http://jsfiddle.net/Exceeder/epGFH/另外请注意,此解决方案与IE6不兼容,因为XHR是在W3C标准化之后才引入IE的,即在IE7中。