很急的一个问题。想得到js高手的帮助。
问题描述如下:
html的select 下拉框的宽度是由下拉列表中内容最长的决定的。
这个前提条件是<select>中没有设置style="width:60;"这样的属性现在的问题是如果在html页面中设置了select的style="width:60;"属性,
如何能让下拉列表中内容(可能出现很长的内容),这些内容能全部正常显示出来。
例如:
<HTML>
<HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
</HEAD><BODY>
  <select style="width:60;">
    <option>0</option>
    <option>1</option>
    <option>22</option>
    <option>3333</option>
    <option>444444444444444444444444444444444444444444444444444444444444</option>
  </select>
  </BODY>
</HTML>
如何让444444444444444444444444444444444444444444444444444444444444显示出来。

解决方案 »

  1.   

    如果可以,title一下
    <option title='444444444444444444444444444444444444444444444444444444444444'>444444444444444444444444444444444444444444444444444444444444 </option> 
      

  2.   

    或者用<div>做个提示层,mouseover、mouseout控制开、关。我一般习惯用title
      

  3.   

    最方便的就是加上title <option title="balalla">text</option>
      

  4.   

    我用的是ie7, 加了title还是不行。要保证ie6,ie7都能正常显示。
    因为我是要做一个公共的js函数,来控制很多html页面中select的显示,是不能保证
    每个html页面中select的option都加上了title的。
      

  5.   

    你都写公用JS函数了....     在你的函数里写上 title不就好了....
      

  6.   

    用户希望能看到下拉框内容能全部显示出来的效果,和没有加style="width:60;"属性一样,目前的想法是做一个div层来掩饰原来的下拉框内容,因为div的大小是可控的,也可以把下拉框内容加到div中。
    请做过象这样功能的大虾,能提供代码,让小弟参考一下。
      

  7.   

    1、ie7可以用TITLE.
    2、如果是公共函数:
     a)先尽量将可能出现长内容的option加上title;
     b)有困难的话,只好用效率换结果了:
        遍历SELECT中的每个OPTION,发现有大于某个字符数标准的OPTION时,动态加上TITLE