我有一個Web方法:PageMethods在ASP.NET無法工作,如果你有ASP.NET路由實現
[System.Web.Services.WebMethod]
public static string getCharacterstics(int product_id, int lang_id)
{
// code goes here...
}
我想用PageMethods喜歡訪問: (前提是我必須啓用條件在ScriptManager的PageMethods):
<script type="text/javascript">
$(document).ready(
function() {
$('#characterstics').html("loading");
// '<%= product_id_property %>' , '<%= this.LanguageID %>'
PageMethods.getCharacterstics(0 ,0 , OnSave);
}
);
function OnSave(result) {
}
</script>
我得到錯誤「的HTTP動詞後訪問路徑..是不允許的」
我GOOGLE了它和搜索也是如此,但確實不是G et關於它的任何解決方案基於ASP.NET路由。
我相信是因爲asp.net路由服務方法不可訪問。
另外我想我甚至不能使用JSON,因爲asp.net路由也是如此。
任何幫助表示讚賞。
更新時間:
如果我運行這個網址的頁面:
http://localhost:2606/searchdetail.aspx
成功執行Web方法。
現在
我有路由這樣的:
routes.MapPageRoute("searchdetail", "searchdetail/{ID}", "~/searchdetail.aspx");
routes.MapPageRoute("searchdetail", "searchdetail", "~/searchdetail.aspx");
的set_path()只會工作的情況下,2即沒有ID,但如果我嘗試
不符合的情況下1工作
http://localhost:2606/searchdetail
它正常工作
,但如果我嘗試使用:
http://localhost:2606/searchdetail/123
它給出了預期的對象錯誤。
所以set_path()是我應該寫的選項。
我嘗試使用set_path,但它不起作用。我也更新了我的問題 – Moons
感謝Neha我完成了。其實我正在使用js引用:而不是。這就是爲什麼你的查詢一開始並不適合我。我用小提琴手來找出問題 – Moons