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

时间:2011-03-08 03:49:12

标签: jquery asp.net ajax

$.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); 
       }
   });

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

1 个答案:

答案 0 :(得分:0)

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

如果可能,请使用/services/Default.aspx/GetPage等形式的网址 - 注意前导斜杠 - 无论您从哪个网页调用它们,它们都会被翻译成<your domain>/services/Default.aspx/GetPage