【问题标题】:jQuery, AJAX - content type: application/json - does it work in all browsers?jQuery、AJAX - 内容类型:application/json - 是否适用于所有浏览器?
【发布时间】:2011-01-17 21:29:04
【问题描述】:

这就是我迄今为止处理我的 ajax 的方式:

@header("Content-Type: text/html; charset=".get_option('blog_charset'));

和js:

$.ajax(....
  ...
  success: function(response){
    var obj = eval('('+response+')'); 
    if(obj.somedata == ....)
  ...

现在我想使用 application/json 作为内容类型,因此 javascript 更改为:

$.ajax(....
  ...
  success: function(response){
    if(response.somedata == ....)
  ...

看起来更好:) 但我很想知道这是否适用于所有浏览器?到目前为止,它在 FF、Opera 和 IE 8 中测试正常。

【问题讨论】:

    标签: jquery html ajax json


    【解决方案1】:

    是的,只要您的服务器发送正确的内容类型(应用程序/json)和格式正确的 JSON 数据,它就可以工作。

    也只是为了安全起见,您可以指定响应数据类型:

    $.ajax({
        dataType: 'json',
        success: function(response) {
            if(response.somedata == ....
        }
    });
    

    【讨论】:

      【解决方案2】:

      是的。 JSON 与其说是特定于浏览器的/特定的,不如说是特定于 Javascript 的,因此假设您有一个浏览器(任何浏览器)具有完整的 javascript 实现,那么它将支持 JSON。 see here

      【讨论】:

        【解决方案3】:

        .getJSON 方法也适用于浏览器 =)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-12-09
          • 2012-03-15
          • 1970-01-01
          • 2012-05-23
          • 1970-01-01
          • 1970-01-01
          • 2013-08-02
          • 1970-01-01
          相关资源
          最近更新 更多