【问题标题】:Call ASP.Net Function from Jquery从 Jquery 调用 ASP.Net 函数
【发布时间】:2014-04-30 14:55:17
【问题描述】:

试图解决这个问题,但找不到很好的解释..

    function updateusers() {
    var columns = ["username", "password", "email", "adminlevel", "usertype", "gender", "regdate", "lastlog"]
        for (var row = 2; row <= $('#usertable').children().children().length; row++) {
            for (var col = 0; col < 8; col++) {
                if ($('[name=' + row + '_' + columns[col] + ']').val() != 0) {
                    ###ASP.Net Function###
                    UpdateIT($('[name=' + row + '_' + columns[col] + ']').val())
                    ###ASP.Net Function###
            }
        }
    }
}

我知道我可以用 Ajax 做到这一点,但无法正确理解如何.. 我的 Default.aspx 中有一个名为 UpdateIT 的函数,我想调用它

【问题讨论】:

    标签: javascript jquery asp.net ajax


    【解决方案1】:

    试试这个。

    function updateusers() {
            var columns = ["username", "password", "email", "adminlevel", "usertype", "gender", "regdate", "lastlog"]
                for (var row = 2; row <= $('#usertable').children().children().length; row++) {
                    for (var col = 0; col < 8; col++) {
                        if ($('[name=' + row + '_' + columns[col] + ']').val() != 0) {
                            ###ASP.Net Function###
                            var param = {};
                            param.name =  row + '_' + columns[col];
                            $.ajax({
                               type: 'POST',
                               url: '<%= ResolveUrl("~/default.aspx/UpdateIT") %>',
                               data: JSON.stringify(param),
                               contentType: 'application/json; charset=utf-8',
                               dataType: 'json',
                               success: function (msg) {
                               alert(msg.d)
                           }
                           });
                           ###ASP.Net Function###
                    }
                }
            }
        }
    

    也可以查看此链接

    Calling a webmethod with jquery in asp.net webforms

    编辑------

    我实现了这个测试,它在这里工作。试试看。

    cs

    [WebMethod]
    public static void UpdateIT(string name)
    {
        throw new Exception("I´m here");
    }
    

    js

    function tryCallUpdateIT() {
    
        var param = {};
        param.name = '1' + '_' + "value";
        $.ajax({
            type: 'POST',
            url: 'default.aspx/UpdateIT',
            data: JSON.stringify(param),
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function (msg) {
                alert(msg.d)
            }
        });
    
    }
    

    【讨论】:

    • Json 格式是什么意思?,我要发送到那里? ASP.Net 函数的参数?
    • 我将代码更改为使用json之类的参数。您将调用em seserver端的函数需要有[WebMethod]注解,并且param.name,属性名os param需要与方法参数同名。
    • 我已经按照你说的修改了,也修改了目录位置 (url: '',) 添加错误:警报(“错误”),它不断提醒我我遇到了一个错误
    • 试试用default.aspx/UpdateIT,可以发一下错误信息吗?
    • UpdateIT 有带注释的 [WebMethod] 吗?
    猜你喜欢
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 2011-11-18
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 2017-03-30
    • 1970-01-01
    相关资源
    最近更新 更多