我希望其他人经历过这一点,并能指出我在正确的方向上解决原因/解决方法。
我遇到的问题是我正在使用jQuery UI-Dialog进行某些表单输入。当对话框显示时,它完全没有标题栏。我在firebug中打开它,注意到有一个CSS项目表示如下;
element.style {
display:none;
}
Firefox中的element.style似乎是指/ html / body / div [3] / div,它是用于标题栏本身的div。当我禁用display:none;标题栏变得可见。所以,我知道出现了什么导致它,但似乎css也许是jquery本身可能发生的事情的结果。
我最初认为由于我的CSS文件可能会出现CSS冲突,因此我将它们评论出来并尝试仅使用jquery库和自定义css和图像运行页面。仍然得到同样的东西。
我已经和我斗争了好几天了,真的可以使用一些建议。
由于
更新:
$(document).ready(function() {
$("#dlgEditMlgData").dialog({ autoOpen: false,
modal: true,
show: 'blind',
hide: 'explode',
title: 'Mileage Entry Edit Utility'
});
$("#dlgEditMlgData").hide().siblings().hide();
});
答案 0 :(得分:1)
你发布了这样的代码:
$(document).ready(function() {
$("#dlgEditMlgData").dialog({
autoOpen: false,
modal: true,
show: 'blind',
hide: 'explode',
title: 'Mileage Entry Edit Utility'
});
$("#dlgEditMlgData").hide().siblings().hide();
});
当您调用.dialog时,元素将移动到文档的末尾并插入到包装器中(对话框的框架)。
但之后你会在元素上调用hide并隐藏它的'siblings,这意味着你隐藏了div本身,但是你也隐藏了标题栏,它在div被移动后是div的兄弟。如果你需要隐藏元素的兄弟,请在创建对话框之前这样做。
答案 1 :(得分:1)
你有没有理由要调用$(“#dlgEditMlgData”)。hide()。siblings()。hide()?将autoOpen设置为false时将对话框初始化为对话框时,将隐藏该对话框以启动。要显示该对话框,请调用:
$('#dlgEditMlgData').dialog('open');
无需在对话框或其兄弟节点上显式调用hide()。