jquery对话框需要单击两次才能关闭

时间:2017-01-06 07:18:43

标签: javascript jquery jquery-ui-dialog

我一直在尝试使用jquery对话框设置div来弹出窗口

首先,当用户点击按钮并打开对话框时,当他关闭对话框时,它会在第一次点击时关闭。

第二次尝试关闭对话框时,它会再次打开相同的弹出窗口,然后需要再次单击关闭按钮才能关闭它。

https://jsfiddle.net/xwpwku1w/31/

jQuery的:

function ShowMyContainerDivForSC(containerID, title, width, height) {
     if ($(containerID).data('uiDialog'))
         $(containerID).dialog('destroy');
     $(containerID).dialog({
         width: width,
         draggable: true,
         height: height,
         resizable: false,
         title: title,
         modal: false,
         open: function (event, ui) {
             $(this).show();
         },
         close: function (event) {
             if (typeof AfterClose == "function") {
                 AfterClose(containerID);
             }
             //$(this).remove();-- commented cause it just removes the element.
         }
     });
     return false; 
}

1 个答案:

答案 0 :(得分:1)

修改了您的代码,var containerID = "#mpopup";现在可以按我的预期https://jsfiddle.net/xwpwku1w/33运行,请检查。

旁注 - 建议您将$(containerID)保存在变量中,因为它使用了3次,https://jsfiddle.net/xwpwku1w/34