javascript - 用于确认的 jQueryUI 对话框替换?

标签 javascript jquery html jquery-ui

我试图用 jQueryUI 对话框覆盖默认的确认框,这是我的尝试:

window.confirm = function (message_confirm) {
        $(document.createElement('div'))
            .attr({ title: 'Please confirm', 'class': 'confirm', 'id': 'dialogconfirm' })
            .html(message_confirm)
            .dialog({
                buttons: { YES: function () { return true; }, NO: function () { $(this).dialog('close'); } },
                close: function () { $(this).remove(); },
                draggable: true,
                modal: true,
                resizable: false,
                width: 'auto',
                hide: { effect: "fade", duration: 300 },

            });

    };

这是因为一旦该脚本运行,调用常规 confirm 会显示 jQueryUI 对话框,但是,YES 选择不起作用。我有一个如下所示的 ajax 调用:

if (confirm("Are you sure you want to delete this user?"))
{
      alert("test");
     //ajax call
}
return false;

并且没有出现测试警报。对话框的 NO 选择工作正常。我怎样才能让 YES 起作用?

谢谢。

最佳答案

你可以给函数添加一个回调参数

window.confirm = function (message_confirm, ok_callback)

在 YES 上触发它

 buttons: { YES: function () { ok_callback(); }}

稍后继续

confirm("message", function(){
    alert('smth');
});

关于javascript - 用于确认的 jQueryUI 对话框替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38722811/

相关文章:

javascript:创建从时间 a 的光标位置到时间 b 的光标位置的范围

javascript - JS 图表未在 HTML 中显示

javascript - jQuery 事件命名空间是如何工作的

javascript - Jquery 在点击时更改 CSS 类

javascript - 将事件类添加到当前元素

javascript - 单击时展开一个 div(具有悬停翻转效果)

javascript - 如何使用Jquery UI进行拖放

javascript - 如何在html选项中添加onClick?

javascript - jquery 每个 map 数组不打印所有内容

javascript - 在所选元素上显示 div