【问题标题】:jquery find if its json or xmljquery 查找它的 json 还是 xml
【发布时间】:2009-10-07 05:40:05
【问题描述】:

我想知道响应是 json 还是 xml,我如何使用 jquery 找到它?

我当前的代码如下,但如果响应是 json,它会给出错误。

var is_xml = ($('status_code', XMLHttpRequest.responseText)) ? true : false;

错误是:

需要选择器。

应为 ',' 或 '{' 但找到 '"}}"'。

【问题讨论】:

  • "'status_code', XMLHttpRequest.responseText" 看起来不是一个有效的选择器
  • 是的..因为它的响应是在json中,如果是xml,它将是有效的选择器。

标签: jquery xml json response


【解决方案1】:

根据documentationajaxError 回调的第三个参数是传递给jQuery.ajax 调用的选项对象。您可以查询该对象的dataType 值以确定调用是否应返回 json 或 xml。当然,这假设您一开始就适当地设置了dataType 选项。

【讨论】:

    【解决方案2】:

    为什么返回格式不一致? IMO 你应该在请求页面之前确切地知道应该返回什么。

    【讨论】:

    • 因为一些方法使用了xml和一些json,由于某种原因,这是在ajax_error上实现的,所以如果有任何错误或错误响应,就会触发ajax错误,它会显示bad来自 xml/json 响应的响应。 :) 请提供任何解决方案!
    • 那么你为什么不能定义两个函数来做ajax部分,一个用于json,一个用于xml?
    • 为什么要使用两种方法,当您可以使用一种方法完成工作时。无论如何它已经解决了,谢谢你的参与:)
    • 嗯,选择的答案几乎就是我想说的,因为你必须知道你在使用什么来发送数据类型,在你收到它之前......
    • @meder,我同意你的看法。 +1
    猜你喜欢
    • 2015-12-08
    • 1970-01-01
    • 2017-06-03
    • 2017-06-18
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    相关资源
    最近更新 更多