繁体   English   中英

从JavaScript调用服务器端方法时出错

[英]Error while calling server side method from javascript

[WebMethod]
public static string simple()
{
    Home h = new Home();
    h.logout();

    return "dfdsf";
}
public void logout()
{
    Response.Redirect(Config.Value("logout"));
}

客户端代码

$('#logout').on('click', function () {
    console.log("dfsnhkjdfsj");
    $.ajax({
        type:"GET",
        url: "Home.aspx/simple"
        }).done(function () {
        console.log("dfsds");
    });

});

http:// localhost:14605 / Home.aspx / simple 404(未找到),它表明未找到该方法,请帮助清除

尝试在没有.aspx的情况下使用。 Home是控制器的名称, simple是控制器中方法的名称。

$('#logout').on('click', function () {
    console.log("Clicked");
    $.ajax({
        type:"GET",
        url: "Home/simple"
        }).done(function () {
        console.log("Done");
    });

});

如果您的服务器端方法位于您的代码后面,则此方法应该有效

JS

$('#logout').on('click', function () {
    console.log("Clicked");
    PageMethods.simple(yourParameterIfAny, onSucess, onError);
        function onSucess(result) {
            /*OK*/
        }
        function onError(result) { /*Error*/ }
});

并且您的脚本管理器必须将其属性EnablePageMethodstrue

            <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
            </asp:ScriptManager>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM