我正在尝试使用网络表单。我只有基础知识(我主要使用MVC)。
<asp:Button runat="server" ID="LinkButton1" OnClientClick="return confirmItemDelete()" CommandArgument='<%# Eval("id") %>' Text="Delete" OnClick="lbDeleteMessage_Click"></asp:Button>
function confirmItemDelete() {
bootbox.confirm('Are you sure you want to delete this message?',
function (confirmed) {
return confirmed;
});
};
按钮单击总是导致服务器端删除。这是因为bootbox.confirm
适用于回调(仅在回调中返回false或true)。这会导致始终运行服务器端回发。
这里最好的解决方案是什么?
答案 0 :(得分:0)
您可以使用其他html控件进行调用bootbox
,并使用javascript
调用<asp:Button />
进行回调。
HTML
<asp:Button ID="linkLogout" Style="display: none;" OnClick="linkLogout_Click" runat="server" />
<div style="padding: 3px; cursor: pointer;" onclick="showConfirm('Alert', 'Are you want to logout ?')">Logout</div>
JavaScript
function showConfirm(title, msg) {
bootbox.confirm({
title: title,
message: msg,
buttons: {
confirm: {
label: 'Yes',
className: 'btn-primary'
},
cancel: {
label: 'No',
className: 'btn-default'
}
},
callback: function (result) {
if (result) {
$('#linkLogout').click();
}
}
});
}