【问题标题】:How to use Sweet Alert in ASP.NET C#如何在 ASP.NET C# 中使用 Sweet Alert
【发布时间】:2019-04-11 06:05:41
【问题描述】:

我正在尝试在我的 ASP.NET C# 应用程序中使用甜蜜警报作为弹出消息。但我认为我做错了,因为如果我点击按钮或链接按钮,什么都不会发生。它就像一个没有事件的元素。

所以这里是代码。

JAVASCRIPT

<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
    <script type="text/javascript">
        function Confirm(ctl, event) {
            event.preventDefault();
            swal({
                title: "Confirm Logout?",
                text: "Do you really want to log this Account out?",
                type: "warning",
                showCancelButton: true,
                closeOnConfirm: true,
                closeOnCancel: true
            },
            function (isConfirm) {
                if (isConfirm) {
                    return true;
                } else {
                    return false;
                }
            });
        }
    </script>

ASPX

    <li class="nav-item">
  <asp:LinkButton ID="btnLogout" CssClass="nav-link" runat="server" OnClick="btnLogout_Click" OnClientClick="return Confirm(this,event)"><i class="icon ion-android-exit"></i></asp:LinkButton></li>

C#

 protected void btnLogout_Click(object sender, EventArgs e)
    {
         Session.Abandon();
         Response.Redirect("login.aspx");
    }

【问题讨论】:

  • Sweet alert 是异步工作的,所以你的confirm 函数会一直返回false,但是为什么sweet alert 本身没有显示,我不确定,是不是浏览器控制台有错误?跨度>
  • @MatJ ,先生,它没有错误。但你是对的。消息未显示。

标签: javascript c# asp.net webforms sweetalert


【解决方案1】:

OnClientClick 等待 bool 结果调用服务器事件,但 Confirm 方法不返回任何内容。 (function (isConfirm) 返回异步。)

您可以像手动调用function (isConfirm) 上的服务器事件

<script type="text/javascript">
    function Confirm(ctl, event) {
        event.preventDefault();
        swal({
            title: "Confirm Logout?",
            text: "Do you really want to log this Account out?",
            type: "warning",
            showCancelButton: true,
            closeOnConfirm: true,
            closeOnCancel: true
        },
        function (isConfirm) {
            if (isConfirm) {
               _doPostBack('btnLogout', 'OnClick');
            } 
        });

       return false;
    }
</script>

【讨论】:

  • 没有显示甜蜜警报信息,但它成功销毁了会话
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-10
  • 2021-10-10
  • 1970-01-01
相关资源
最近更新 更多