客户的一个小要求,但是还真不知道怎么弄。。请教大家了。是浏览器导致的问题,但是客户还是要这个效果。
ListBox; .NET 3.5
假设有10个item,第5个是选中项,显示3项。
Item0
Item1
Item2
Item3
Item4-----selected
Item5
Item6
Item7
Item8
Item9每次打开页面或者刷新的时候,chrome,safari,Opera,Firefox下的显示都如下:
........
-----------------
Item2
Item3
Item4|||||----SelectedItem
-----------------
..........
有的是把选中项放在显示的第一个位置上,有的就是放在最后一个位置,如上面这样。总之会显示选中项。
但是我在IE7,8,9下测试都是直接显示:
---------------
Item0
Item1
Item2
---------------
...............客户一定要在页面打开得时候显示选中项。。这个很蛋疼啊。求教大家有没什么思路?

解决方案 »

  1.   

    页面之所以会刷新只有两种原因:第一,F5了。
    第二:PostBack了。F5的情况下,,他默认第一个,,就显示第一个。
    postback的情况,他肯定会把自己需要的选项选择了以后再提交,所以在
    Page_Load的时候,再一次的给它赋值就OK。
      

  2.   

    我觉得不是这个问题吧。因为在其他浏览器下都是显示想要的效果。
    数据是已经有了的,无论是postback还是F5。SelectedItem项也是确定的。如第5个。
    但是在IE下它始终默认显示前3个。而在其他浏览器下都会移动到选择的项再显示。如上面说的那样,显示3,4,5
      

  3.   

    我记忆中binddata的操作确实是在page_load里面。周末了没在项目机器旁
      

  4.   

    我用纯HTML试了select 加上multiple="multiple"属性之后就会出现这个问题。。这个ListBox控件是加了multiple的
    请问高手们有什么建议么?
    还就只有在IE下有这个问题
      

  5.   

    Lz你还是看看代码有没有问题吧,我也做过类似功能,IE下没问题啊