jQuery ajax返回数据:json和html混合?

我有这个ajax请求,可从服务器获取数据,并且默认情况下dataType始终html是。但是有时它会从服务器返回json,所以我想检查返回的数据是否为html,然后执行A,否则执行B。可能吗?

我的jQuery

 $.ajax({

type: "GET",

dataType: "html",

url: request_url,

context: $('#meat'),

async: true,

beforeSend: function () {},

success: function (returndata, status, jqXHR) {

if ($.parseJSON(returndata) === false) A;

else B.

}

});

当返回的数据为时html,出现此错误,

语法错误:JSON.parse:意外字符

那么如何使此代码 ?

回答:

我不确定是否有更好的方法,但是您可以尝试…

$.ajax({

type: "GET",

url: request_url,

context: $('#meat'),

async: true,

beforeSend: function() {

},

success: function (returndata, status, jqXHR) {

var parsed;

try

{

parsed = $.parseJSON(returndata);

// Execute B

}

catch(e)

{

// treat as html then

// do parsing here

parsed = returnData;

// Execute A

}

}

});

以上是 jQuery ajax返回数据:json和html混合? 的全部内容, 来源链接: utcz.com/qa/401496.html

回到顶部