使用jqueryUI对话框模仿confirm()

前端之家收集整理的这篇文章主要介绍了使用jqueryUI对话框模仿confirm()前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使用jQueryUI对话框模仿标准的JavaScript confirm().我在考虑以下内容,但我显然不明白它应该如何运作.有什么建议么?谢谢
return $("#dialog-cancel").dialog("open");

$("#dialog-cancel").dialog({
    autoOpen: false,height: 400,width: 350,modal: true,open: function(event,ui){},buttons: {'OK': function(){$(this).dialog("close");return true;},'CANCEL': function() {$(this).dialog("close");return false;}}
});

解决方法

副本确实没用.对不起,我很抱歉.

基于这个answer,这就是我要做的:

>创建一个函数,创建一个带有消息和OK / Cancel按钮的基本模态对话框
>为单击它们时执行的两个按钮接受两个回调

好处是它不会像答案那样用无限循环来阻止整个浏览器. jQuery UI对话框的选项模式只是阻止当前页面.

这是代码

function confirmDialog(message,onOK,onCancel) {

    $('<div>' + message + '</div>').dialog({
        modal: true,buttons : {
            "OK" : function() { 
                $(this).dialog("close");

                // if there is a callback,execute it
                if (onOK && $.isFunction(onOK)) {
                    onOK();
                }

                // destroy the confirmation dialog
                $(this).dialog("destroy");
            },"Cancel" : function() {
                $(this).dialog("close");
                if (onCancel && $.isFunction(onCancel)) {
                    onCancel();
                }
                $(this).dialog("destroy");
            }
        }
    });

}

你可以这样使用它:

$('button').click(function(e) {

    var okHandler = function() {
        alert('ok');
    };

    confirmDialog('Do you really want ?',okHandler);
});

DEMO

猜你在找的jQuery相关文章