首页 > 解决方案 > 从javascript中的文本url读取

问题描述

我正在尝试用 JavaScript 编写一个程序,我已经在 J​​ava 中拥有了它。我尝试了几种不同的方式来读取url.txt文件,但我不能说我理解其中的任何一个。所以我想避免使用 Jquery 和其他非标准选项,因为我正在尝试学习这种语言。这是html:

<!DOCTYPE html>
<html>
<head>
    <title>Page Title</title>
    <script src="/script.js"></script>
</head>
<body>
    <button onclick="getText()">Try It</button>
    <p id="text"></p>
</body>
</html>

JavaScript:

function getText() {
    var bool = true;
    var xReq = new XMLHttpRequest();
    xReq.addEventListener("progress", updateProgress);
    xReq.addEventListener("load", transferComplete);
    xReq.addEventListener("error", transferFailed);
    xReq.addEventListener("abort", transferCanceled);
    xReq.open(
      "GET",
      "http://jeff.cis.cabrillo.edu/datasets/santa-cruz-addresses.txt");
    xReq.send();
}
function updateProgress (oEvent) {
    if (oEvent.lengthComputable) {
        var percentComplete = oEvent.loaded / oEvent.total * 100;
    } else {
        // Unable to compute progress information  total size is unknown
    }
}

function transferComplete(evt) {
    document.getElementById("text").innerHTML = "The transfer is complete.";
}

function transferFailed(evt) {
  document.getElementById("text").innerHTML = "An error occurred";
}

function transferCanceled(evt) {
  document.getElementById("text").innerHTML = "canceled by the user.";
}

最终,我会将 txt 文件拆分为行和数组,但首先我需要弄清楚这一点,任何帮助都会非常感谢。

标签: javascripthtml

解决方案


由于安全原因,您不能向外部域发出 javascript 请求。仅当外部允许通过添加此标头来执行此操作时才有可能:Access-Control-Allow-Origin。

对于您的问题,最好的方法是使用 ajax 从本地读取静态文件。


推荐阅读