2013-10-09 16 views
3

您好我有asp.net web表單的經驗非常少html頁面,但我有一個情況下,我必須在服務器上執行一個Ajax調用每次應用程序啓動或頁面被更改時。jQuery的AJAX調用asp.net web表單返回,而不是調用指定的方法在url

考慮到這我在MasterPage.Master文件添加了這個方法:

[WebMethod] 
public static void DeleteUnpostedDocumentsFromFileShare() 
{ 
    var ceva = "I was called"; 
} 

,並添加了brakepont到它,所以我可以看到,當它被調用。

這是Ajax調用我創造:

$(document).ready(function() { 
$.ajax({ 
    type: "POST", 
    url: "/Masterpage.Master/DeleteUnpostedDocumentsFromFileShare", 
    contentType: "application/json; charset=utf-8", 
    success: function(data) { 
     alert(data); 
    }, 
    error : function(data , data2 , data3) { 
     alert(data); 
    } 
}); 

})

的問題是,這個調用返回的HTML頁面的內容,而不是叫我所需要的方法。

誰能告訴我什麼,我做錯了什麼?

回答

5

我覺得你錯過了返回值從以JSON烏爾的WebMethod

[WebMethod] 
    public static string DeleteUnpostedDocumentsFromFileShare() 
    { 
     var ceva = "I was called"; 
     return ceva; 
    } 

Call Webmethod with json in asp.net

1

我建議你寫你的AJAX方法等其他一些aspx頁面比母版,並刪除從page.Use該網頁的HTML內容僅用於編寫Web方法通過AJAX調用。 所以你的ajax web方法頁面必須只有頁面指令,沒有別的。

這裏是另一種方式來調用Web方法完全asp.net的方式,無需使用jQuery

Calling C# function through Javascript (without Json)

希望這有助於

相關問題