调用jquery ajax从外部js文件中使用WebMethod

$.ajax( { type: "POST", url: "Default.aspx/GetAge", data: "{}", contentType: "application/json; charset=uft-8", dataType: "json", success: function (rsp) { SetAge(rsp); }, error: function (rsp) { alert(rsp); } }); 

现在它报告以下错误:“找不到资源”。 我认为我正确指定了url。 这个javascript位于与Default.aspx相同的目录中的外部文件中……有什么想法吗?

我相信您的url不正确 – 您使用的是相对url,浏览器会将其视为相对于当前网页。 它不被认为是相对于js文件。 例如,如果您正在从www.xyz.com/SomeFolder/page1.aspx页面尝试此请求,那么您的ajax请求将被定向到www.xyz.com/SomeFolder/Default.aspx/GetAge因此请调整url因此。

如果可能的话,使用表格中的url,例如/services/Default.aspx/GetPage – 注意前导斜杠 – 它们将始终被翻译成/services/Default.aspx/GetPage无论您从哪个页面调用它们..