我有一个动态HTML文档,并且在特定时间点它有一个与此类似的标记(当然,更复杂):
<div style="display: none">
<select><option>some text</option></select>
</div>
<div>
Some text
</div>
我的问题是在IE 6中,即使其父级设置为display:none,仍然可以看到select。还有其他人遇到过这个问题吗?我想我记得在很久以前就看到了复选框这个问题。其他浏览器(当然)也可以使用,包括IE8。
当然,如果您尝试在IE6中查看此代码段,则不会有任何问题。这是一个错误,只是按照正确的顺序执行。
答案 0 :(得分:0)
我无法重现问题,尝试使用ie6并且没有显示选择。
您可以放置更多代码,以包含您正在使用的j。
此外,ie6在遇到小事时往往会发出异议。
尝试添加“;”到你的CSS结束。如下所示: 没有看到你的代码,但这可能只需要制作即表现。
答案 1 :(得分:0)
虽然我不确定,但我认为我点击了this issue
答案 2 :(得分:0)
我遇到了这样的问题。对我来说,当我像这样清空时,看不见的选择框会突然变得可见:
select.empty();
我发现没有jQuery清空选择框解决了问题:
select[0].options.length = 0;
然而,这在下次调用select.val()时引入了一个新问题IE6会抛出错误“无法设置所选属性。未指定错误。”
具有讽刺意味的是,我在select.empty()调用之后通过调用select.show()找到了另一个解决方案。我猜测show()欺骗浏览器重新计算基于父级的可见性。这使它能够意识到元素首先不应该是可见的。所以这对我有用:
select.empty()
// some code to repopulate the list
select.show();