我需要发出 Ajax 请求,但它的响应可能会有所不同,并且由服务器端决定。
有什么方法可以知道响应的类型吗?
它可能类似于:
$.post(url, pars, function (response, type) {
if (type=='json') ...
if (type=='html') ...
});
最佳答案
没有内置的方法来执行此操作,它由 jQuery.httpData
确定并丢弃(注意:在 1.4.3 中它将是 jquery.ajax.httpData
)。
虽然您可以查看 httpData 源并自己运行相同的函数,但这有点浪费,因为 jQuery 已经在这样做了。我
如果你的选择只有json
或html
,你可以检查typeof response
,它应该是"string"
对于 HTML,否则你有 JSON,你也可以检查并确定它,例如:type && type.propertyAlwaysThere
。
关于javascript - jQuery:获取 Ajax 响应的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3445128/