第一次使用jquery (使用MVC3中的开箱即用的1.4.4,尽管它已经过时了)。我正在尝试更新屏幕上的一些元素,如下所示,
$(document).ready(function () {
$.ajax({
url: '<snip />',
dataType: 'json',
success: function (data, textStatus, jqXHR) {
// <snip />
},
error: function (jqXHR, textStatus, errorThrown) {
// <snip />
}
});
});这总是调用错误函数,即使在jqXHR对象中我可以清楚地看到文本响应
"{
"DBHealth": "Grey",
"FSHealth": "Grey",
"WSHealth": "Grey"
}"完整的超文本传输协议服务器响应(由WireShark提供)
HTTP/1.1 200 OK
Cache-Control: private, s-maxage=0
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNetMvc-Version: 3.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Persistent-Auth: true
Date: Thu, 03 May 2012 14:11:23 GMT
Content-Length: 72
{
"DBHealth": "Grey",
"FSHealth": "Grey",
"WSHealth": "Grey"
}textStatus是错误而不是解析器错误,所以我假设问题不是我的JSON。不出所料,errorThrown是null。
显而易见的问题是,为什么它会出错?
发布于 2012-05-03 22:56:31
Visual Studio太傻了。重新启动调试会话,它成功了。没有改变javascript或服务器端控制器中的任何东西。
https://stackoverflow.com/questions/10433862
复制相似问题