2011-03-08 151 views
0
$.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相同的目錄...任何想法?調用jquery ajax從外部js文件中使用WebMethod

+2

是HTTP請求實際上正在取得?嘗試使用Fiddler查看請求的確切URL。如果您以前沒有使用過Fiddler,那麼這篇文章是一個很好的介紹 - http://www.4guysfromrolla.com/webtech/111208-1.shtml – 2011-03-08 04:00:43

+0

@scott mitchell +1有用的調試工具!我是一個白癡,我需要清理我的構建和重建。 – 2011-03-08 04:05:56

+1

除了Fiddler Firebug也是很棒的工具。 – TheVillageIdiot 2011-03-08 04:08:17

回答

0

我相信你的網址是不正確的 - 你使用的是相對url,它們被瀏覽器視爲相對於當前頁面。它不被認爲是相對於js文件。例如,如果您在頁面www.xyz.com/SomeFolder/page1.aspx處嘗試此請求,則您的ajax請求將被指向www.xyz.com/SomeFolder/Default.aspx/GetAge,因此請相應地調整url。

如果可能的話,使用網址的形式,如/services/Default.aspx/GetPage - 記斜線 - 他們將總是會轉換成<your domain>/services/Default.aspx/GetPage不論頁的您從中調用它們..