2012-04-05 42 views
1

我尝试从服务器使用jQuery检索JSON对象。这个对象的一些属性是数组。当这些数组不为空时,我可以处理我的对象。但是,当我取回这样一个JSON:无法使用jQuery检索特定的JSON对象

{"Id":144,"Identifier":"4000011","ContractId":115,"ContractName":"Test4","Meters":[],"Scans":[]} 

其中“米”和“扫描”是空的,jQuery的引发错误...我查询我的服务器使用此代码:

$("#test").click(function() { 

     $.ajax({ 
      type: "GET", 
      url: "/Gateway/GetDetails/144", 
      data: {}, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (data, textStatus, jqXHR) { 

       ... 

      }, 
      error: function (jqXHR, textStatus, errorThrown) { 
       ... 
      } 
    }); 

在错误处理程序中,我可以在参数“jqXHR”的responseText属性中看到我的JSON对象。你有没有遇到这个问题?

在此先感谢!

+0

你得到的错误是什么? – wgcrouch 2012-04-05 11:20:05

+0

我不知道:(我没有得到服务器端错误在客户端,在错误处理程序中,参数“errorThrown”是一个空字符串,而textStatus的值是“error”。 .. – schglurps 2012-04-05 11:38:11

回答

0

我回答我自己的问题...首先我只用Internet Explorer 9测试;与其他浏览器一起按预期工作。在清除Internet Explorer缓存后,问题消失了。

1

您提供的JSON有效(由JSON Lint工具确认);有可能您正在查询的服务器正在返回HTTP错误状态码,或者服务器端发生内部错误。您可以使用FirebugChrome Developer tools等调试代理进行确认。

+0

不,我没有得到服务器端错误,提琴手说,HTTP响应代码是200.所以我认为这个错误与jQuery有关,但我不知道如何证明它... – schglurps 2012-04-05 11:40:39