2012-07-09 38 views
2

我正在使用jQuery从服务器检索json数据。服务器响应一个json编码的对象。问题是,服务器响应后,我的成功功能不会被调用。jQuery getJSON成功时从不调用函数

这里是我的要求:

$('form').on('submit', function(event) { 
    event.preventDefault(); 
    $.getJSON('?getAvailableRoom', function(data, textStatus, jqXHR) { 
    alert("Success!"); // doesn't happen 
    }); 
}); 

下面是来自服务器的响应:

Response Headers 
Content-Type  application/json 
Date    Mon, 09 Jul 2012 20:02:10 GMT 
Transfer-Encoding chunked 
Via     1.1 teleproxy01 (NetCache NetApp/6.0.3P2D5) 

Request Headers 
Accept application/json, text/javascript, */*; q=0.01 
Accept-Encoding gzip, deflate 
Accept-Language en-us,en;q=0.5 
Host XXXXX 
Proxy-Connection keep-alive 
Referer XXXXX 
User-Agent Mozilla/5.0 (Windows NT 5.2; rv:13.0) Gecko/20100101 Firefox/13.0.1 
X-Requested-With XMLHttpRequest 

Response 
{'id':'AsuRC'} 
+0

请告诉我响应的状态码? – alexn 2012-07-09 20:21:17

+0

@alexn:我假设200,因为有一个JSON响应。 – 2012-07-09 20:22:59

+0

@火箭你可以发送一个身体的所有状态代码。 – alexn 2012-07-09 20:24:25

回答

6

你JSON是无效的。

它应该是:

Response 
{"id":"AsuRC"} 
+1

是的,JSON需要双引号,而不是单引号。 – 2012-07-09 20:22:38

+0

哦...哇。我认为这不是我的目标,并且服务器返回单引号? – Tanaki 2012-07-09 20:23:07

+0

服务器返回单引号,是的。 – 2012-07-09 20:23:52