在javascript中读取文本文件的第一行
假设我的web服务器上有一个文本文件,位于在javascript中读取文本文件的第一行,javascript,html,version,text-files,Javascript,Html,Version,Text Files,假设我的web服务器上有一个文本文件,位于/today/changelog en.txt下,其中存储了有关网站更新的信息。每个部分都以版本号开始,然后是更改列表 因此,文件的第一行始终包含最新版本号,我希望使用纯JavaScript(无jQuery)读取该版本号。这可能吗?如果可能,如何实现?使用XHR应该足够简单。像这样的东西对你很合适: var XHR = new XMLHttpRequest(); XHR.open("GET", "/today/changelog-en.txt", tru
/today/changelog en.txt
下,其中存储了有关网站更新的信息。每个部分都以版本号开始,然后是更改列表
因此,文件的第一行始终包含最新版本号,我希望使用纯JavaScript(无jQuery)读取该版本号。这可能吗?如果可能,如何实现?使用XHR应该足够简单。像这样的东西对你很合适:
var XHR = new XMLHttpRequest();
XHR.open("GET", "/today/changelog-en.txt", true);
XHR.send();
XHR.onload = function (){
console.log( XHR.responseText.slice(0, XHR.responseText.indexOf("\n")) );
};
因此,鉴于txt文件在外部可用,即:对应于URL,我们可以执行XHR/AJAX请求来获取数据。请注意,没有jQuery,因此我们将编写更详细的香草JavaScript
var xmlHttp;
function GetData( url, callback ) {
xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = callback;
xmlHttp.open( "GET", url, true );
xmlHttp.send( null );
}
GetData( "/today/changelog-en.txt" , function() {
if ( xmlHttp.readyState == 4 && xmlHttp.status == 200 {
var result = xmlHttp.responseText;
var allLines = result.split("\n");
// do what you want with the result
// ie: split lines and show the first line
var lineOne = allLines[0];
} else {
// handle the error
}
});
文件在外部可用吗?ie:可以通过XHR/AJAX请求访问它吗?我对AJAX一无所知。你能提供一个url来生成有问题的txt文件吗?如果是这样的话,我可以告诉你要编写什么代码来实现你想要的结果。@Christopher cool,那么我们可以发出一个XHR请求,现在就发布一个答案。我如何使它与HTML文件一起工作?编辑:现在有意义了:D@DJDavid98只需将其放入
脚本
标记中即可。在您看到的console.log
中,放置一些使用版本号的函数。是的,我知道,只有那一行是从顶部开始的missong。很好@DJDavid98是的,很抱歉。抱歉,但阿曼的版本更紧凑。这并不意味着你的代码不好,只是我喜欢用尽可能简单的方式来做。不过,这取决于你,我的代码有能力重复使用,并负责任地处理错误。