【发布时间】:2013-03-01 05:55:22
【问题描述】:
以下是我的 JQuery AJAX 方法:
function meFun() {
alert('enter');
$.ajax({
type: "POST",
url: "About.aspx/GetRes",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Do something interesting here.
alert(msg);
}
});
alert('end');
}
以下是我的按钮代码:
<input type="button" onclick="meFun();" value="Click me" id="btn" />
Folling 是我在 About.aspx 中的功能
Public Function GetRes() As Boolean
Return True
End Function
meFun()方法调用成功,但没有调用GetRes(),AJAX调用也没有返回任何响应。
知道为什么吗?另外,请提出一种调试此类 AJAX 问题的好方法。
【问题讨论】:
-
尝试为ajax请求指定一个错误回调,而不仅仅是一个成功回调。
-
jquery 是否已加载..?
-
您在此 AJAX 请求中获得的 HTTP 状态代码是什么?使用此 AJAX 调用的 statusCode 函数。对于 AJAX 调试,我使用 firefox 的插件 Firebug,我可以在控制台中看到我的 AJAX 请求、参数和来自服务器的响应。
-
你确定
GetRes()是一个返回json的方法吗?Do you get any errors in the console? -
对于调试 javascript,没有什么比所有现代浏览器都提供开箱即用或通过扩展下载提供的 Web 开发工具更好的了。在 chrome/IE/firefox(如果安装了 firebug)中按 f12,它会出现。您可以设置自定义断点并观察表达式来暂停您的代码并单步执行它以及监控 http 流量。 http 流量将首先告诉您 ajax 是否正在调用服务器。这是一个好的开始