jquery弹出消息后如何执行服务器端点击事件

本文关键字:执行 服务器 端点 事件 消息 何执行 jquery | 更新日期: 2023-09-27 18:27:10

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
    $("[id*=btnModalPopup]").live("click", function () {
        $("#modal_dialog").dialog({
            title: "jQuery Modal Dialog Popup",
            buttons: {
                ok: function () {
                    $(this).dialog('close');
                    __doPostBack('btnModalPopup', 'OnClick');
                    //document.getElementById("btnModalPopup").click();
                }
            },
            modal: true
        });
        return false;
    });
</script>
<body>
    <form id="form1" runat="server">
    <div id="modal_dialog" style="display: none">
        This is a Modal Background popup
    </div>
    <asp:Button ID="btnModalPopup" runat="server" Text="Show Modal Popup" ClientIDMode="static"  OnClick="btnModalPopup_Click" />
</form>
</body>

上面的代码显示J查询弹出消息。它工作正常。但弹出消息后,我需要执行服务器端代码如果我从脚本中删除Return False,它将执行服务器端代码,但弹出消息将消失。它应该执行后弹出的OK按钮点击

请帮忙。。。。

jquery弹出消息后如何执行服务器端点击事件

服务器端方法

[System.Web.Services.WebMethod]
public static string GetCurrentTime(string name)
{
    return "Hello " + name + Environment.NewLine + "The Current Time is: "
        + DateTime.Now.ToString();
}

客户端

function ShowCurrentTime() {
    $.ajax({
        type: "POST",
        url: "CS.aspx/GetCurrentTime",
        data: '{name: "' + $("#<%=txtUserName.ClientID%>")[0].value + '" }',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: OnSuccess,
        failure: function(response) {
             //do
        }
    });
}
function OnSuccess(response) {
    btnModalPopup_Click();
}

使用jQuery AJAX调用ASP.Net页面方法示例

ClientIdMode='static'添加到按钮,从事件处理程序返回false,并在OK按钮回调中尝试此操作

 OK: function() {
      $(this).dialog('close');
      __doPostBack('btnModalPopup','OnClick');
 }