jquery-ui - JQuery UI 对话框问题 : Close removes the div

标签 jquery-ui modal-dialog jquery-ui-dialog

我想使用 JQuery UI 对话框小部件在我的页面上显示弹出屏幕。

为了实现这一点,我有一个 <div class="popup-placeholder">在我的页面上。实际上页面上有多个(如果这对解决方案有影响)

单击按钮后,我将初始化对话框并“打开”它。弹出窗口的初始化位于操作单击内,因为它应该进行 Ajax 调用来获取弹出窗口的内容。 (我尝试从点击事件中取出初始化,但这不起作用$('div.popup-placeholder').dialog();)

    var popupContext = $('#' + contextControl.id + ' > .popup-placeholder');
    popupContext.html(formHtml);

    $(popupContext).dialog({
        bgiframe: true,
        modal: true,
        autoOpen: false,
        closeOnEscape: false,
        dialogClass: '',
        draggable: true,
        position: 'center',
        resizable: false,                                    
        width: 600
    });

单击操作按钮后,表单将显示并执行其预期的操作。 现在,我在弹出窗口上有一个关闭链接,它不是对话框按钮,而只是另一个绑定(bind)了事件的链接。 它这样做...

$('#popup-placeholder-61').dialog('close');

其中 #popup-placeholder-61 与 $(popupContext) 相同

我现在面临的问题是,在弹出窗口关闭时,相同的操作按钮不会再次显示弹出窗口。问题似乎是 <div class="popup-placeholder">已从标记中删除。

我尝试了下一页上的解决方案,但没有帮助 - Jquery Dialog Close on StackOverflow

所以,我需要更多帮助

最佳答案

经过一番努力,我想出了一个最好的解决方案。请使用下面的行而不是对话框('close')

$('#popup-placeholder-61').dialog("destroy");

这将允许 div 保留其位置

关于jquery-ui - JQuery UI 对话框问题 : Close removes the div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2250910/

相关文章:

c# - JavaScript 运行时错误 : Unable to get property 'msie' of undefined or null reference

html - 通过单击背景 <image> 打开模式

asp.net-mvc - 在 MVC 4 中的另一个表单中验证 JQuery UI 模式表单

jquery - 为什么我无法从 jQuery UI 对话框中触发提交按钮?

jquery 对话框按钮的 tabindex

javascript - Jquery自动完成键按下显示标签名称而不是值?

Jquery UI 可排序存在

javascript - 如何在 Postback 上维护 UI 元素状态? (ASP.NET MVC)

mysql - 下拉 findbyvalue 不起作用

仅限 JQuery、Chrome、Safari、带有滚动副本和关闭滚动条的模态。需要停止背景滚动