从ajax调用中检索textResponse属性

时间:2018-01-24 12:39:23

标签: javascript jquery ajax

var getTemplateCall = $.ajax({
    url: url,
    type: type,
    data: data
});
console.log(getTemplateCall);

此代码将向我展示控制台中ajax响应的细分,包括' responseText'财产及其内容。

我想只将响应文本作为变量访问,所以我尝试了

console.log(getTemplateCall.responseText);
console.log(getTemplateCall['responseText']);

这两个都返回' undefined'当我真正想要看到的是responseText属性的内容时。我认为这是一个语法问题。

访问responseText的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

getTemplateCall不包含异步查询的结果。它包含您的异步查询。使用getTemplateCall.done(...)

来自official jQuery documentation

var getTemplateCall = $.ajax({
    url: url,
    type: type,
    data: data
});

getTemplateCall.done( data => { // This is the callback of your asynchronous call
     console.log(data);
})

或只是:

$.ajax({
        url: url,
        type: type,
        data: data
    }).done( data => {
         console.log(data);
    })

答案 1 :(得分:1)

不要一起写,执行:

tc.testTable.Properties.VariableNames = varNames

一秒后,执行:

var getTemplateCall = $.ajax({
    url: url,
    type: type,
    data: data
});

如果你一起编写它,你将得到未定义,因为浏览器正在发送ajax-request.So,你必须等待一秒钟。 实际上本机代码是这样的:

console.log(getTemplateCall.responseText);