javascript - jQuery:获取 Ajax 响应的类型

标签 javascript ajax jquery

我需要发出 Ajax 请求,但它的响应可能会有所不同,并且由服务器端决定。

有什么方法可以知道响应的类型吗?

它可能类似于:

$.post(url, pars, function (response, type) {
    if (type=='json') ...
    if (type=='html') ...
});

最佳答案

没有内置的方法来执行此操作,它由 jQuery.httpData 确定并丢弃(注意:在 1.4.3 中它将是 jquery.ajax.httpData)。

虽然您可以查看 httpData 源并自己运行相同的函数,但这有点浪费,因为 jQuery 已经在这样做了。我

如果你的选择只有jsonhtml,你可以检查typeof response,它应该是"string" 对于 HTML,否则你有 JSON,你也可以检查并确定它,例如:type && type.propertyAlwaysThere

关于javascript - jQuery:获取 Ajax 响应的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3445128/

相关文章:

javascript - 在除数数组中找到最小公约数

jquery - 向 Django REST Framework 发送 jQuery 请求导致未找到 JSON 对象错误

jQuery indexof 从第二个相同的字符开始

jquery - 获取宽度大于特殊值的图像

javascript - 如何将元素设置为固定全屏

javascript - Ajax 返回空数组?

Javascript 按字母顺序排序;如何将数值与数字进行比较,同时将它们与字符串进行比较?

javascript - 优化 Node.js 中的组合 MongoDB 查询

javascript - 仅显示 localStorage 数据数组中的第一项

jquery - Internet Explorer 8 的布局/Javascript 问题