当我第二次打开时,jQuery 对话框缩小

发布于 2024-10-24 16:21:49 字数 717 浏览 4 评论 0原文

我有一个 div(比如 div1),其中包含两个下拉框和一个包含另一个 div(比如 div2)的表单。我已将这个 div1 定义为 jquery 对话框。在更改第一个下拉列表时,将填充另一个下拉列表,在更改第二个下拉列表时,div2 将加载 ajax 调用的 html 结果。

现在我使用关闭按钮关闭对话框,然后当我尝试重新打开对话框(div1)时,对话框高度缩小到上述高度以下。如果我打开对话框而不更改第二个下拉列表,则它工作正常。 仅当onchange发生在第二个下拉列表中时,对话框才会缩小。

jQuery 对话框打开 div1:

    $("#fileDoc").dialog({
    bgiframe: true,     
        autoOpen: false,
        height: 680,
        width: 800,
        modal: true,
        resizable: false
});

jQuery 对话框关闭 div1:

$('#fileDoc').dialog('close');

jQuery ajax 调用在 div2 中加载 html:

$("#doc").html(data);

我正在使用 jQuery 1.4.4 和 UI 1.8.2。

I have div (say div1) which contains two dropdown box and a form which has one another div (say div2). i have defined this div1 as jquery dialog. On change of 1st drop down another dropdown will be populated and on change of 2nd dropdown, div2 will be loaded with html result of an ajax call.

Now i close the dialog using close button and then when i try to reopen the dialog (div1), the dialog height got shrinked below mentioned height. If i open dialog without changing 2nd dropdown, it is working fine.
Only when onchange occurs in 2nd dropdown, the dialog box gets shrinked.

jQuery Dialog Open div1:

    $("#fileDoc").dialog({
    bgiframe: true,     
        autoOpen: false,
        height: 680,
        width: 800,
        modal: true,
        resizable: false
});

jQuery dialog close div1:

$('#fileDoc').dialog('close');

jQuery ajax call loads html in div2:

$("#doc").html(data);

i am using jQuery 1.4.4 and UI 1.8.2.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

胡大本事 2024-10-31 16:21:49

关闭时,请确保销毁对话框 .dialog( "destroy" ),否则对话框及其内容将在 DOM 中保持隐藏状态。这可能会产生问题,因为 ID 是唯一的,并且您只能打开同一 #id 的一个实例。

On close, make sure you are destroying the dialog .dialog( "destroy" ), otherwise dialog and it's content will remain hidden in DOM. This can create a problem since ID's are unique and you can only have one instance of the same #id open.

无所的.畏惧 2024-10-31 16:21:49

我已经找到问题了。在关闭 div1 对话框之前,div2 应该为空,否则 div2 的高度也会减去对话框的高度,因此会减少 jQuery UI 对话框 1.8.2 中的高度。

所以,jQuery 对话框关闭 div1:

$("#div2").html(""); $("#fileDoc").dialog("close");

i have found the problem. div2 should be empty before closing the div1 dialog, otherwise that div2 height also taken and subtracted with dialog height and hence it reduces height in jQuery UI Dialog 1.8.2.

so, jQuery dialog close div1:

$("#div2").html(""); $("#fileDoc").dialog("close");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文