我尝试使用ajax Asynchronous,但该值只返回“undefined”。 没有Jquery请!!
function readTextFile(file){
if(window.XMLHttpRequest) {
var rawFile = new XMLHttpRequest();
}else {
var rawFile = new ActiveXObject("Microsoft.XMLHTTP");
}
rawFile.open("GET", file, false);
rawFile.send(null);
//alert(rawFile.responseText);
var textvalue = rawFile.responseText;
return textvalue;
}
var str = readTextFile(file);
答案 0 :(得分:1)
请尝试此解决方案:
function readTextFile(file) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
var textvalue = xhttp.responseText;
}
};
xhttp.open("GET", file, true);
xhttp.send();
}
答案 1 :(得分:1)
您需要使用onreadystatechange
事件和回调:
function readTextFile(file, callback){
if(window.XMLHttpRequest) {
var rawFile = new XMLHttpRequest();
}else {
var rawFile = new ActiveXObject("Microsoft.XMLHTTP");
}
rawFile.onreadystatechange = function() {
if (rawFilereadyState == 4 && rawFile.status === 200) {
callback(rawFile.responseText);
}
}
rawFile.open("GET", file, false);
rawFile.send(null);
}
readTextFile(file, function(str) {
// use the str
});