从 XMLHttpRequest 获取数据 responseText
Getting data from XMLHttpRequest responseText
我正在使用 ajax 获取一些我想在 ajax 完成后使用的数据。但是我无法操纵响应
这是我的代码
function testAjax() {
direc = "controller.php";
return $.ajax({url: direc});
}
var obj = testAjax();
console.log(obj);
console.log(obj.responseText);
console.log(obj) returns 这个:
XMLHttpRequest { readyState=1, timeout=0, withCredentials=false, more...}
回应
"[{"CLICREDIT_Cod":"1002","CLICREDIT_Credit":"2000","CLICREDIT_FlagEstad":"1"}]"
响应文本
"[{"CLICREDIT_Cod":"1002","CLICREDIT_Credit":"2000","CLICREDIT_FlagEstad":"1"}]"
console.log(obj.responseText) returns 这个:
(an empty string)
有没有办法操纵这些数据?我试过 JSON.parse 之类的东西,但似乎没有任何效果,我们将不胜感激。
谢谢
这是异步的,需要用到.done()
函数。看看示例 here.
由于 ajax 是异步的,因此您必须使用:
promise.then( doneCallback, failCallback )
function testAjax() {
direc = "controller.php";
return $.ajax({
url: direc
});
}
var obj = testAjax();
obj.then(function(result) {
console.log(result);
}, function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
});
success
后可以使用回调函数。浏览器不会等待响应并继续执行代码。所以当浏览器得到结果时,回调函数将会命中。
$.ajax({url: direc, success: doSmth});
function doSmth(data){
//do something with data
}
使用 success() 获取请求页面的响应
var responseText={};
$.ajax({url: 'controller.php',
type:"POST",
success: function(data)
{
responseText= data;
}});
我正在使用 ajax 获取一些我想在 ajax 完成后使用的数据。但是我无法操纵响应 这是我的代码
function testAjax() {
direc = "controller.php";
return $.ajax({url: direc});
}
var obj = testAjax();
console.log(obj);
console.log(obj.responseText);
console.log(obj) returns 这个:
XMLHttpRequest { readyState=1, timeout=0, withCredentials=false, more...}
回应
"[{"CLICREDIT_Cod":"1002","CLICREDIT_Credit":"2000","CLICREDIT_FlagEstad":"1"}]"
响应文本
"[{"CLICREDIT_Cod":"1002","CLICREDIT_Credit":"2000","CLICREDIT_FlagEstad":"1"}]"
console.log(obj.responseText) returns 这个:
(an empty string)
有没有办法操纵这些数据?我试过 JSON.parse 之类的东西,但似乎没有任何效果,我们将不胜感激。 谢谢
这是异步的,需要用到.done()
函数。看看示例 here.
由于 ajax 是异步的,因此您必须使用:
promise.then( doneCallback, failCallback )
function testAjax() {
direc = "controller.php";
return $.ajax({
url: direc
});
}
var obj = testAjax();
obj.then(function(result) {
console.log(result);
}, function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
});
success
后可以使用回调函数。浏览器不会等待响应并继续执行代码。所以当浏览器得到结果时,回调函数将会命中。
$.ajax({url: direc, success: doSmth});
function doSmth(data){
//do something with data
}
使用 success() 获取请求页面的响应
var responseText={};
$.ajax({url: 'controller.php',
type:"POST",
success: function(data)
{
responseText= data;
}});