Bootstrap确认在服务器按钮调用时Dialog无法正常工作

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (64)

我试图通过这种方式在自定义SharePoint WebPart上使用asp:LinkBut​​ton调用BootstrapDialog.confirm()

<asp:LinkButton runat="server" OnClientClick="BootstrapDialogPopup(this);return false;" OnClick="btn_Click" />

BootstrapDialog函数是:

function BootstrapDialogPopup(param) {
BootstrapDialog.confirm({
    title: 'Cancel',
    message: 'Are you sure?!',
    type: BootstrapDialog.TYPE_DEFAULT,
    closable: true,
    draggable: true,
    btnCancelLabel: 'Cancel',
    btnOKLabel: 'Ok',
    btnOKClass: 'btn-warning',
    callback: function (result) {
        if (result) {
            javascript: __doPostBack(param.name, '');
        } else {
            BootstrapDialog.closeAll();
        }
    }
});

}

但是,一旦我点击了asp:LinkBut​​ton,它就会在我有机会选择“ 确定 ”或“ 取消 ” 之前调用它的服务器端点击事件(btn_Click)。

所以,我的问题是:如何抓住Button服务器事件,直到我有机会选择“ 确定 ”或“ 取消 ”。

请注意,此问题仅在SharePoint环境中发生。

提问于
用户回答回答于

如果您提到的链接按钮正在回发的问题,这是由于您的方法BootstrapDialogPopup最后没有返回false。 所以你有两个选择:

1)Addreturn false;在BootstrapDialogPopup()结束时

2)修改你的按钮OnClientClick为:OnClientClick =“BootstrapDialogPopup(this); return false;”

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动