javascript - 从javascript中的文本url读取
问题描述
我正在尝试用 JavaScript 编写一个程序,我已经在 Java 中拥有了它。我尝试了几种不同的方式来读取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 文件拆分为行和数组,但首先我需要弄清楚这一点,任何帮助都会非常感谢。
解决方案
由于安全原因,您不能向外部域发出 javascript 请求。仅当外部允许通过添加此标头来执行此操作时才有可能:Access-Control-Allow-Origin。
对于您的问题,最好的方法是使用 ajax 从本地读取静态文件。
推荐阅读
- java - 当我使用 @FindBy 注释时没有出现这样的元素异常,当我使用 driver.findelement(By.id()) 时工作正常
- laravel - 显示未定义的变量:sendemail Laravel Beautymail
- angular - Angular-Typescript 代码即使在到达 return 语句后也通过循环运行
- github-actions - 如何将带有空格的字符串值传递给 github 操作 env
- javascript - 如何在每个页面请求时发送一个 ajax 调用并使用 ajax 调用的结果对 DOM 进行更改?
- hibernate - 在 google-cloud-spanner-hibernate 中切换只读事务和读写事务
- java - 在php中执行java时如何修复编码
- c++ - 当我调用 const getter 函数时,为什么我的编译器会抛出“Conversion lost (const) qualifiers”错误?
- r - 使用 dateInput 作为要从中抓取的 url 的日期组件
- javascript - 如何在javascript中正确添加天数