ASP.NET 4 jquery ajax webmethod调用

1 ajax jquery asp.net-4.0 webmethod

在ASP.NET 3.5中,我在页面上有这个javascript(default.aspx):

function getMoreNewsItems() {
    $.ajax({
        type: "POST",
        url: "default.aspx/LoadNewsItems",
        data: "{}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            alert(msg.d);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

在后面的代码中使用这个(default.aspx.cs):

[System.Web.Services.WebMethod]
public static string LoadNewsItems() {
    return "test1";
}
Run Code Online (Sandbox Code Playgroud)

我在页面上有一个ScriptManagerMethods = true的ScriptManager.一切正常.

现在项目升级到ASP.NET 4.0并使用新的URL路由功能.AJAX调用不再起作用.在FireBug中,我看到它返回完整的页面,而不是XML响应.

ASP.NET 4中可能导致此错误的变化是什么?

pet*_*ter 9

固定,

更改

url: "default.aspx/LoadNewsItems",
Run Code Online (Sandbox Code Playgroud)

url: '<%= ResolveUrl("default.aspx/LoadNewsItems") %>',
Run Code Online (Sandbox Code Playgroud)

它与URL路由有关.