Src.choice.display=TRUE;
改为Src.choice.disabled=TRUE;
也不行

解决方案 »

  1.   

    <script>
    function deleteOption(src) 

    // src :select对象 
    var srcindex=eval(src.btype.selectedIndex); //当前选中的选项 
    var srclength=eval(src.btype.length); //select对象选项长度,有几个项选 
    // 删除... 
    //alert("sdf") 
    if (eval(src.choice.value)=="4") 

    //alert("sdf"); 
    src.btype.disabled=true; 


    else 
    //alert("sdfsdf") 
    src.btype.disabled=false; }
    </script>  <form  name= "serachform" method= post  action= userlogin/search.asp >
    <table>
    <td>
    <input name=keyword  size=18 maxlength=80>
    <select name=choice onclick="deleteOption(this.form)">
    <option value=1  selected>产&nbsp;&nbsp;&nbsp;&nbsp;品</option>
    <option value=2 >公&nbsp;&nbsp;&nbsp;&nbsp;司</option>
    <option value=3 >行情信息</option>
    <option value=4 >网&nbsp;&nbsp;&nbsp;&nbsp;站</option>
    </select>
     <select name=btype style="width:202px">
      <option value="0" selected>任何分类</option>
    .....
                   </td>
                  </form>
      

  2.   

    select 没有 readOnly 只有disabled
    给你一种变相的 select 只读的实现
    <select onchange="this.selectedIndex=1">
    <option>1</option>
    <option selected>2</option>
    <option>3</option>
    </select>
      

  3.   

    当然还有这种用CSS实现的方法<style>
    select.readonly{meizz:expression(selectedIndex=0)}
    </style><select class="readonly">
      <option>1</option>
      <option>2</option>
    </select><select>
    <option>1</option>
    <option>2</option>
    </select>
      

  4.   

    那我就盗用一下上面的罗
    那一段可改为
    if (eval(src.choice.value)=="4") 

    //alert("sdf"); 
    src.btype.className="readonly"; 


    else 
    //alert("sdfsdf") 
    src.btype.className=""; 
    }
      

  5.   

    好像不行哟,我本身子select是从数据中取出来的数据,在下拉表中,但我点击父select共中一项时要把子selec不可选
    如选一,则子select让他正常运行,下拉可选
    如果选四则子select 让他不可选(或把子select这个框件给藏起来也可以)
    如果又选一或二或三则让子select又可以正常选择
    不知大家是否明白,很感谢帮忙
      

  6.   

    你有没有试过我的代码?
    只有先第四项时btype不可选
    其它的都可以