<select name="fruit" size = "3" multiple>
    <option value="apple">苹果
    <option value="orange">桔子
    <option value="mango">芒果
    <option value="apple1">苹果1
    <option value="orange1">桔子1
    <option value="mango1">芒果1
    <option value="apple2">苹果2
    <option value="orange2">桔子2
    <option value="mango2">芒果2
 </select>如果你实际只用到30的个话,size='30'就可以了.

解决方案 »

  1.   

    楼主好像是要点击的时候,才显示30个。
    应该用size,不要multiple
    帮你顶,希望有人来解答。
      

  2.   

    你好,你这个的初始状态为出现5个数据项,我需要的功能是初始状态为1个数据项,当我点击下拉箭头的时候才会出现
      <select name="select" size="5">
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        <option>5</option>
        <option>6</option>
        <option>7</option>
        <option>8</option>
        <option>9</option>
        <option>10</option>
      </select>这个代码所显示的状态
      

  3.   

    我看要动态实现了,下面的代码你参考一下吧
    <select name="section">
    {section name=sec1 loop=$section}
    <option value="{$section[sec1].id}"  {if $section[sec1].id eq $edituser.section_id } selected {/if}>{$section[sec1].name}</option>
    {/section}
    </select>
      

  4.   

    能实现,但还是要显示下拉的过程.
    IE7 FF3测试通过.<script language='javascript'>
      function aaa()
      {
        var obj = document.getElementById("fruit");
        obj.size=3;
        obj.onclick = function(e)
        {
          obj.size=1;
          obj.onclick = aaa;
        }
      } 
    </script>
    <select id='fruit' name="fruit" onclick="aaa();"">
        <option value="apple">苹果
        <option value="orange">桔子
        <option value="mango">芒果
        <option value="apple1">苹果1
        <option value="orange1">桔子1
        <option value="mango1">芒果1
        <option value="apple2">苹果2
        <option value="orange2">桔子2
        <option value="mango2">芒果2
     </select>
      

  5.   

    jakey9826,你好,非常感谢你帮我忙啊,可是我不是要从下拉框再转到列表框的效果哦,如果转的话,肉眼不能看到下拉框的显示过程就好了,我现在考虑用层做做看,其实也不会,先学着做吧
      

  6.   

    层是DW里面的概念吧,其实可以使用<ul><li></li></ul>+CSS+JS实现你想要的结果!!!
    就像一些菜单的实现是一样的
      

  7.   


    <script language='javascript'> 
      function aaa() 
      { 
        var obj = document.getElementById("fruit"); 
        obj.size=3; 
        obj.onchange = function(e)
        {
         obj.size = 1;
         obj.blur();
        }
        return false; 
      } 
    </script> 
    <select id='fruit'  name="select" onfocus="aaa();"> 
        <option>1 </option> 
        <option>2 </option> 
        <option>3 </option> 
        <option>4 </option> 
        <option>5 </option> 
        <option>6 </option> 
        <option>7 </option> 
        <option>8 </option> 
        <option>9 </option> 
        <option>10 </option> 
    </select> 
      

  8.   

    <script language='javascript'> 
    document.onclick=function(e){
      e=e||event;
      var obj=e.srcElement||e.target;
      var o= document.getElementById("fruit");
      if(obj==o){
        if(o.size=="1")o.size=5;
        else o.size=1;
      }else o.size=1; 
    }
    </script> 
    <select id='fruit'  name="select"  size="1" > 
        <option>1 </option> 
        <option>2 </option> 
        <option>3 </option> 
        <option>4 </option> 
        <option>5 </option> 
        <option>6 </option> 
        <option>7 </option> 
        <option>8 </option> 
        <option>9 </option> 
        <option>10 </option> 
    </select> 通过size来实现,如果不通过size,只能div模拟了
      

  9.   

    div模拟也比较困难呀.
    关键是ie6下,没有找到比onclick事件更早的事件.
    没有办法去除哪个下拉的效果.
      

  10.   

    showbo,你好,你写的代码没有达到我要的效果哦,我要的效果是这样的
    比如代码:<select name="select">
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
      <option>6</option>
      <option>7</option>
      <option>8</option>
      <option>9</option>
      <option>10</option>
    </select>,这个点击下拉箭头,下拉框的下面不是出现10个数据项吗,我现在不要看到10个,我只要看到5个数据项,其他5个以滚动条的形式出现,(注意:这时的高度仍为1啊),不知道我的意思能否让大哥理解哦
      

  11.   

    是啊,我也用div层做了,隐藏不了啊,有谁能帮帮我啊
      

  12.   

    通过测试 
    <input id="a" name="a" type="hidden" /> <br> 
    <select id='fruit'  name="select"  onFocus="this.size=5;" onBlur="this.size=1" onChange="this.size=1;document.getElementById('a').focus();"> 
        <option>1 </option> 
        <option>2 </option> 
        <option>3 </option> 
        <option>4 </option> 
        <option>5 </option> 
        <option>6 </option> 
        <option>7 </option> 
        <option>8 </option> 
        <option>9 </option> 
        <option>10 </option> 
      </select>
      

  13.   

    25楼的同志写的不对哦,我给出我想要的效果的图片,请参考下,谢谢
    我想实现下拉框的功能的初始状态为:http://xa.photo.store.qq.com/rurl2=2cb81c8b2ad1334307e77b1592a716f2b11ad766f55917f02504237450aa2a658b845a1b69e78fd6ed24a57510871779c6134f198b6f285d017f249f3f6cf92bdc5803c38959cf2b0b0801189ce0df456b808101,此下拉框中有10个数据项, 我想实现下拉框的功能的最终状态为: 
    http://xa.photo.store.qq.com/rurl2=00d2deff70c1e9be93e3bdfd63626711738fd878975968e5641a13337e3f43683484f448ef66b72eacc14332abb0da5e5a6c202ac351d54e3761cf9037256bacf69cdd801b0f0a2b5207af531e9d4d78f28714fb 
    请会做的大哥帮忙下,谢谢
      

  14.   

    这次应该是你要的效果了吧,ie6 ie7 FF全部通过测试
     <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <script> 
    function f(sel1) 

    var sel2=document.getElementById('select2'); 
    var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0; 
    var name =sel2.options[i].innerHTML; 
    var tmp=new Option(name,sel2.value); 
    sel1.options[0]=tmp; 
    sel2.style.display='inline'; 
    sel1.style.width=sel2.offsetWidth; 
    sel2.focus(); 

    function c(sel2) 

    var sel1=document.getElementById('select1'); 
    var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0; 
    var name =sel2.options[i].innerHTML; 
    var temp=new Option(name,sel2.value); 
    sel1.options[0]=temp; 
    sel2.style.display="none"; } 
    </script> 
    </head> 
    <body> 
    <select id="select1" onFocus="f(this)"> 
    <option>dhh </option> 
    </select> <br> 
    <select id="select2"  name="select" size="5" style="display:none;" onChange="c(this)" onBlur="this.style.display='none'"> 
        <option>dhh </option> 
        <option>bbb </option> 
        <option>3 </option> 
        <option>4 </option> 
        <option>5 </option> 
        <option>6 </option> 
        <option>7 </option> 
        <option>8 </option> 
        <option>9 </option> 
        <option>10 </option> 
      </select> 
    </body> 
    </html> 
      

  15.   

    29楼的大哥脚本很厉害,我不得不惊叹哦,是实现了我想要的效果了,如果把你的代码放到一个页面中,此页面中有n条记录,这时我的每条记录就会被这行增宽了,其图片如: 
    http://xa.photo.store.qq.com/rurl2=ef31a1bff2005d5df3c802a45380809ad95f5b2171e2b3b9ad97ccb4cdb700b52d141e716c22b0d2b4ec4031b82002c9834d41ba4d519e4d97e9cce009691c81e0cf3c59cb4ba95d9dd2da387a59e025962b01c5 
    烦请29楼的大哥帮忙帮到底吧,可以帮我实现不要把这行增宽吗?谢谢哦
      

  16.   

    在select2的style中加上 z-index:2; position:absolute;这两个属性 试试看
      

  17.   

      已经实现,非常感谢35楼的朋友,感觉你编程挺棒的,如果物理距离近的话,真想拜你为师了
      我工作也快1年了,这1年中虽然也学到了不少东东,可是感觉自己进步不大,我有个师兄,他工作近2年,他现在都已经是java方面的高手了。
      由于我以前数学不是很理想,又因为自己是女生,我真怀疑,我是否适合做研发的工作,哎,有时候觉得真是累啊……
      

  18.   

    已经实现,非常感谢31楼的朋友,感觉你编程挺棒的,如果物理距离近的话,真想拜你为师了 
      我工作也快1年了,这1年中虽然也学到了不少东东,可是感觉自己进步不大,我有个师兄,他工作近2年,他现在都已经是java方面的高手了。 
      由于我以前数学不是很理想,又因为自己是女生,我真怀疑,我是否适合做研发的工作,哎,有时候觉得真是累啊……