显示我返回的JSON

时间:2011-11-03 16:21:55

标签: javascript jquery html json

在我的HTML页面上,我有以下脚本。

var request = $.ajax({
    url: 'http://localhost:1337/testservice.svc/rest/BillingPatterns', 
    dataType: 'json',
    success: function(data){alert('test');},    
});

request.fail(function(jqXHR, textStatus) {
  alert( "Request failed: " + textStatus );
});

返回“请求失败:错误”

使用fiddler2(检查http流量),我可以看到请求,并且响应是:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Thu, 03 Nov 2011 16:11:05 GMT
Content-Length: 159

{"Anniversary":false,"BillingPatternCode":6,"BillingPatternDesc":"Monthly Anniversary ","Frequency":1,"Monthly":true,"QuarterDayType":null,"QuarterDays":false}

enter image description here

但它不会显示。无论我尝试过什么。是的我已尝试过alert(data.BillingPatternDesc)

修改 它似乎没有执行“成功”功能。

3 个答案:

答案 0 :(得分:2)

尝试提醒(data.d)而不是提醒(数据)。

编辑:不要认为它是相关的,但是在你发出警报后你错过了一个分号。

edit2:如果它没有执行成功函数,请将你的getJSON更改为$ .ajax并提供错误回调以查看问题所在。

答案 1 :(得分:2)

我提供的代码对我来说是正确的。我的猜测是问题可能在你的网址中。您的JSON请求是http://localhost:1337/Myservice.svc/rest/BillingPatterns;运行脚本的页面是否也在localhost:1337下运行?如果没有,您的浏览器将不允许您获取JSON,因为它被视为跨域请求。

如果您确实需要在不同的域/端口获取JSON资源,则可以使用JSONP。

答案 2 :(得分:0)

尝试使用alert(data.toSource());console.log(data);

http://www.w3schools.com/jsref/jsref_toSource_date.asp