通过 Jquery 使用 Ajax 调用函数/数据库更新

Posted

技术标签:

【中文标题】通过 Jquery 使用 Ajax 调用函数/数据库更新【英文标题】:Calling a function / database update using Ajax via Jquery 【发布时间】:2011-10-28 04:56:23 【问题描述】:

我正在创建一个简单的“这有用吗?”带有 Yes 和 No 对象的表单 - 使用 ASP.net webforms。

我需要使用 jquery 通过 ajax 完成提交,以防止用户在同一页面上多次投票。目前我在相关页面后面的 C# 代码中有两种方法 Like_Click 和 Dislike_click。

谁能给我一些关于通过 jquery 进行简单 ajax 演练的指导或链接(我是 ajax 新手!)

我研究过在每个方法上使用 [WebMethod] 标识符,但并没有完全理解这个方法。

谢谢

【问题讨论】:

“通过 ajax 使用 jquery”进行操作不会“阻止用户在同一页面上多次投票”。他们可以手动触发发送 ajax 请求的 JS 或直接点击 URL。您应该在服务器端之前验证他们没有投票。 我试图做的是使用 ajax 来防止页面在刷新时重新提交,同时在触发 JS 时禁用对象 onclick 事件。 【参考方案1】:

您可能正在寻找 jQuery 的post function。查看示例。你会想要按照以下方式做一些事情:

$('.myForm').submit(function() //define a handler for the submit event of the form
    $.post($(this).attr('action'), useful: true); //send data via ajax
    return false; //prevents the form from submitting via a normal web request
);

【讨论】:

【参考方案2】:

你可以试试下面的方法

 <script type="text/javascript">
    $(function () 
        $('#btnSubmit').click(function () 
            var like = $('#Like').val();
            var dislike = $('#Dislike').val();
            if (name != '' && email != '') 
                $.ajax
                    (
                        type: 'POST',
                        url: 'Home.aspx/UpdateDB',     //UpdateDB is declared as WebMethod 
                        async: false,
                        data: "'like':'" + like + "','dislike':'" + dislike + "'",
                        contentType: 'application/json; charset =utf-8',
                        success: function (data) 
                            var obj = data.d;
                            if (obj == 'true') 
                                $('#Like').val('');
                                $('#Dislike').val('');
                                alert("Data Saved Successfully");
                            
                        ,
                        error: function (result) 
                            alert("Error Occured, Try Again");
                        
                    );
            
        )
    );
</script> 

Webmethod如下所示

[WebMethod] 
public static string UpdateDB(string like, string dislike) 
 
    //Add your stuff

在这里查看更多详情Call WebMethod from jquery in ASP.NET

【讨论】:

以上是关于通过 Jquery 使用 Ajax 调用函数/数据库更新的主要内容,如果未能解决你的问题,请参考以下文章

Laravel - 如何通过 AJAX (jQuery) 调用控制器函数

django - ajax - 从 jquery/ajax 调用 python 函数

如何使用 jquery ajax 调用来调用 php 函数? [复制]

如何通过onRowSelect ajax事件调用jQuery? [重复]

Jquery ajax调用then函数

ajax与jquery