我有这个功能:
function Ajax() {
var xmlhttp, onready, open, response;
if(window.XMLHttpRequest) {
this.xmlhttp = new XMLHttpRequest();
} else {
this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
this.onready = function(onready) {
this.xmlhttp.onreadystatechange = function() {
if ( this.xmlhttp.readyState == 4 && this.xmlhttp.status == 200) {
onready.call();
}
}
};
this.open = function(_filename, _method) {
this.xmlhttp.open(_method, _filename, true);
this.xmlhttp.send(null);
};
this.response = function() {
return this.xmlhttp.responseText;
};
}
function rc() {
var ajax = new Ajax();
ajax.onready(function() {
document.getElementById("comments").innerHTML = ajax.response();
});
ajax.open("ab.php","GET");
}
rc();
请求发送正常,但我无法提取响应。
答案 0 :(得分:0)
答案 1 :(得分:0)
当我运行你的代码时,我得到了“this.xmlhttp未定义”的行:
if ( this.xmlhttp.readyState == 4 && this.xmlhttp.status == 200)
您已经在xmlhttp对象中。该行应该是:
if ( this.readyState == 4 && this.status == 200)
这应该可以解决错误。