我正尝试在我的 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");
}
最佳答案
OnClientClick 等待 bool 结果调用服务器事件,但 Confirm 方法不返回任何内容。 ( function (isConfirm)
返回异步。)
你可以在函数(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>
关于javascript - 如何在 ASP.NET C# 中使用 Sweet Alert,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55625705/