0

我目前正在创建一个需要访问存储在文本文件中的文本并将其解析为数据结构的网站。我想使用 javascript 函数或 html 标记来包含或调用文件,以便我可以解析它。但是,我似乎找不到一个好的方法来做到这一点。有什么建议么?

我不确定如何更具体,但也许一些伪代码可能会有所帮助。当前代码将遵循以下几行:

mylist = new Array();

function myfunc()
{
    var str = [get information from website];
    mylist.push(str);
}

也就是说,如果网站有以下文字:

"<tag attr=str attr=str>text</tag>"

mylist 的最新(或最后一个)元素是"<tag attr=str attr=str>text</tag>".

谢谢!

编辑:感谢您的快速回复。我试图避开 jquery(实际上,我正在网站中实现 angular),但我试图使用原生 javascript 方法而不是库。从回复来看,没有。谢谢你的帮助!

4

3 回答 3

1

您应该使用XHR Object,也就是“AJAX”方法。

以下是有关如何开始使用它的概述。

这是一段摘录:

function makeRequest(url, callback) {
  if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    httpRequest = new XMLHttpRequest();
  }
  //i'd omit this if I don't support older browsers
  else if (window.ActiveXObject) { // IE
    try {
      httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }
  if (!httpRequest) {
    alert('Giving up :( Cannot create an XMLHTTP instance');
    return false;
  }
  httpRequest.onreadystatechange = function () {
    if (httpRequest.readyState === 4 && httpRequest.status === 200) {
      callback(httpRequest.responseText);
    } else {
      alert('There was a problem with the request.');
    }
  }
  httpRequest.open('GET', url);
  httpRequest.send();
}
//using
makeRequest('path/to/your/file', function (contents) {
  myList.push(contents);
});
于 2013-01-26T00:50:35.543 回答
0

使用 Ajax 在您的 JS 代码中从服务器加载内容。

[get information from website];应该替换为获取数据的函数。

考虑在 $.get() 上为这个 jQuery Docs使用 jQuery

或在 Ajax 上使用本机 JavaScript ajax MDN 文档

于 2013-01-26T00:48:45.823 回答
0

你可以使用 jQuery $.get()

$.get('test.txt', function(data) {
  $('.result').html(data);
});

有关详细信息,请参阅http://api.jquery.com/jQuery.get/ 。

于 2013-01-26T00:50:41.723 回答