jQuery UI关闭动态对话框......或者只是打开的对话框

时间:2010-08-23 21:52:11

标签: javascript jquery jquery-ui modal-dialog

我试图在函数调用结束时关闭一个打开的对话框,并使用我当前的按钮元素关闭对话框。这是打开对话框的代码。它是使用'.modal_btn'的'rel'属性动态调用的。它按预期打开:

    modalDialog = function(dialogId){
        $(dialogId).dialog({
            modal: true,
            draggable: false,
            resizable: false,
            width: 'auto',
            open: function() { $(".ui-dialog-titlebar-close").hide(); }
        });
    }

    $('.modal_btn').live('click', function(){
        var dialogId = $(this).attr('rel');
        modalDialog(dialogId);
    });

现在打开对话框后,我想将当前的HTML元素用于按钮:取消和保存按钮。保存按钮执行ajax调用,在ajax调用完成后,我想关闭对话框。此外,我希望能够通过单击取消按钮关闭打开的对话框。我似乎无法掌握这个简单的功能......任何想法?

2 个答案:

答案 0 :(得分:2)

$(dialogId).dialog('close');

编辑以回应评论:

那么,那怎么样呢。在modalDialog函数中,将一个类应用于对话框本身:$(dialogId).addClass('currently-open-dialog')

然后,您的关闭点击功能可以$('.currently-open-dialog').removeClass('currently-open-dialog').dialog('close');

答案 1 :(得分:1)

将文本放在按钮上的几种方法:标准取消和文字。但是同样的基本行动方法:

'Yes, Save and Exit': function()
            {
                callMyAjaxFuction();
                $(this).dialog('close');
                            },
            Cancel: function()
            {
                $(this).dialog('close');
            }