IE7下用ajax动态填充select框的一个问题

症状:

如果你采用了ajax来动态填充内容,在填充select的时候,页面上有两个select并排,如果填充的内容长度超过默认的长度,则在IE7下不会自动扩展后面一个select框的位置。如图所示第一排:

HTML select error in ie7

 

解决办法:

我这里用的jQuery来填充数据,在填充之前,将后面的select的visibility设为hidden,填充完了之后再设为visible,效果如上图第二行。

代码:

Code
//Fix IE7 auto expand select:
//
first hide the selects
$('#second_cat_fix').css('visibility''hidden');
fillThings(
'''#first_cat_fix');
//then show the selects.
$('#second_cat_fix').css('visibility''visible');

项目文件我已经放在这里了,可以拖下去看一看。里面用到了Google AJAX Libraries API来加载jQuery。

另外请参考这篇日志:IEBlog For the SELECT few...

标签: ie
posted @ 2009-03-03 17:16 Shiny Zhu 阅读(568) 评论(2) 编辑 收藏

 回复 引用 查看   
#1楼 2009-11-28 11:57 咖啡仔      
真好,搞了我几天的问题。搞掂了!
谢谢楼主了!

 回复 引用 查看   
#2楼 2010-01-19 08:34 迷路中的路人甲      
这个还是有点问题,就是变长了的select,一旦改变数据,缩短以后,就没办法便会来了。