で解決しようとしてXMLHttpRequest
いますが、問題が発生しました:
function x(url, callback) { //edited
xmlHttp.onreadystatechange = function() {
if ( xmlHttp.readyState == 4 && xmlHttp.status == 200 ) {
callback(xmlHttp.responseText;) //edited
} else {
document.getElementById('content').innerHTML = '<div class="error">Ups, an error ocurred! Server response: <span>'+xmlHttp.responseText+'</span></div>';
}
}
xmlHttp.open('GET', url, true);
xmlHttp.send(null);
}
function y()
{
var url = base_url + '?asa=test';
x(url, function (response) { //edited
console.log(response);
});
}
しかし、私の問題はif readyState == 4
. の出力console.log
は常に未定義でありif
、 にのみ入力されません。これはelse
、 が最初にif
実行されたときreadyState
に値が になるためです1
。
それで、私が夢中になっているので、その問題を回避する方法は何でも、私は今のところ考えられるすべてを試しました.
アップデート
コードの形式、それは私が最後に試したものです。なぜなら、それを分離する前に、変数やあらゆる種類のもので問題を回避しようとしたからです
ところで、console.log(xmlHttp.readyState)
insideonreadystatechange
の関数は、1、2、3、および 4 を 1 つずつ出力します。