源代码如下<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>练级菜单</title>
<link href="style/cssxx.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
/**
 * @作者:刘灿
 */
var strArr = new Array();

  /***********************************************************************
   *使用方法:strArr[数字] = new Array("显示的值","父ID","自己的ID值","value属性");*
   ***********************************************************************/
 
strArr[0] = new Array("女装,女士精品 ->","03","030A","030A-女装,女士精品-3-true");
strArr[1] = new Array("女鞋","03","030B","030B-女鞋-3-true");
strArr[2] = new Array("女士内衣,内裤 ->","03","030C","030C-女士内衣,内裤-3-true");
strArr[36] = new Array("女士箱包/配件","03","030D","030D-女士箱包/配件-3-true");


strArr[47] = new Array("童装","11","110A","110A-童装-11-童装/婴儿服/鞋帽/亲子装-true");
strArr[48] = new Array("婴儿服装及配件(0-1)岁","11","110B","110B-婴儿服装及配件(0-1)岁-11-童装/婴儿服/鞋帽/亲子装-true");
strArr[49] = new Array("帽子/围巾/手套","11","110C","110C-帽子/围巾/手套-11-童装/婴儿服/鞋帽/亲子装-false");
strArr[50] = new Array("袜子","11","110D","110D-袜子-11-童装/婴儿服/鞋帽/亲子装-true");
strArr[51] = new Array("围嘴/围兜/罩衣","11","110E","110E-围嘴/围兜/罩衣-11-童装/婴儿服/鞋帽/亲子装-false");
strArr[52] = new Array("儿童发饰","11","110F","110F-儿童发饰-11-童装/婴儿服/鞋帽/亲子装-false");
strArr[53] = new Array("亲子装","11","110G","110G-亲子装-11-童装/婴儿服/鞋帽/亲子装-true");
strArr[54] = new Array("其他","11","110H","110H-其他-11-童装/婴儿服/鞋帽/亲子装-false");

strArr[3] = new Array("毛衣",  "030A","030A001","030A001-毛衣-3-女装-true");
strArr[4] = new Array("针织衫","030A","030A002","030A002-针织衫-3-女装-true");
strArr[5] = new Array("小西装","030A","030A003","030A003-小西装-3-女装-true");
strArr[6] = new Array("夹克",  "030A","030A004","030A004-夹克-3-女装-true");
strArr[7] = new Array("棉袄",  "030A","030A005","030A005-棉袄-3-女装-true");
strArr[8] = new Array("风衣",  "030A","030A006","030A006-风衣-3-女装-true");
strArr[9] = new Array("羽绒服","030A","030A007","030A007-羽绒服-3-女装-true");

strArr[10] = new Array("裙子","030A","030A008","030A008-裙子-3-女装-true");

strArr[11] = new Array("T恤",  "030A","030A009","030A009-T恤-3-女装-true");
strArr[12] = new Array("牛仔裤","030A","030A010","030A010-牛仔裤-3-女装-true");
strArr[13] = new Array("情侣装","030A","030A011","030A011-情侣装-3-女装-true");
strArr[14] = new Array("衬衣","030A","030A012","030A012-衬衣-3-女装-true");

strArr[15] = new Array("文胸","030C","030C001","030C001-文胸-3-女士内衣-true");
strArr[16] = new Array("内裤","030C","030C002","030C002-内裤-3-女士内衣-true");
strArr[17] = new Array("保暖内衣","030C","030C003","030C003-保暖内衣-3-女士内衣-true");
strArr[18] = new Array("女袜","030C","030C004","030C004-女袜-3-女士内衣-true");

strArr[19] = new Array("男装 ->","04","040A","040A-男装-4-true");
strArr[20] = new Array("男鞋/男包/饰品配件 ->","04","040B","040B-男鞋/男包/饰品配件-4-true");

strArr[21] = new Array("T恤","040A","040A001","040A001-T恤-4-男装-true");
strArr[22] = new Array("外套","040A","040A002","040A002-外套-4-男装-true");
strArr[23] = new Array("内衣/内裤","040A","040A003","040A003-内衣/内裤-4-男装-true");
strArr[24] = new Array("正装西服","040A","040A004","040A004-正装西服-4-男装-true");
strArr[25] = new Array("毛衣","040A","040A005","040A005-毛衣-4-男装-true");
strArr[26] = new Array("针织衫","040A","040A006","040A006-针织衫-4-男装-true");
strArr[27] = new Array("衬衫","040A","040A007","040A007-衬衫-4-男装-true");
strArr[28] = new Array("男裤","040A","040A008","040A008-男裤-4-男装-true");
strArr[29] = new Array("牛仔裤","040A","040A009","040A009-牛仔裤-4-男装-true");

strArr[30] = new Array("皮带","040B","040B001","040B001-皮带-4-男鞋/男包/饰品配-true");
strArr[31] = new Array("男包","040B","040B002","040B002-男包-4-男鞋/男包/饰品配-true");
strArr[32] = new Array("男鞋","040B","040B003","040B003-男鞋-4-男鞋/男包/饰品配-true");
strArr[33] = new Array("领带","040B","040B004","040B004-领带-4-男鞋/男包/饰品配-true");
strArr[34] = new Array("袜子","040B","040B005","040B005-袜子-4-男鞋/男包/饰品配-true");
strArr[35] = new Array("领结","040B","040B006","040B006-领结-4-男鞋/男包/饰品配-true");

strArr[37] = new Array("女包","030D","030D001","030D001-女包-3-女士箱包/配件-true");
strArr[38] = new Array("帽子","030D","030D002","030D002-帽子-3-女士箱包/配件-false");
strArr[39] = new Array("围巾/丝巾/披肩","030D","030D003","030D003-围巾/丝巾/披肩-3-女士箱包/配件-true");
strArr[40] = new Array("手套","030D","030D004","030D004-手套-3-女士箱包/配件-true");
strArr[41] = new Array("头巾","030D","030D005","030D005-头巾-3-女士箱包/配件-false");
strArr[42] = new Array("手帕","030D","030D006","030D006-手帕-3-女士箱包/配件-false");
strArr[43] = new Array("耳套","030D","030D007","030D007-耳套-3-女士箱包/配件-false");
strArr[44] = new Array("其他配件","030D","030D008","030D008-其他配件-3-女士箱包/配件-false");
strArr[45] = new Array("鞋垫","030D","030D009","030D009-鞋垫-3-女士箱包/配件-false");
strArr[46] = new Array("鞋带","030D","030D010","030D010-鞋带-3-女士箱包/配件-false");
//选择第一个下拉列表框
function checkone()
{
var select1_value = document.frm_goods.select1.value;
var num;
document.frm_goods.select2.length=0;
for(num=0;num<strArr.length;num++)
{
//通过匹配值来判断第二个OPTION的值
if(strArr[num][1]==select1_value)
{
      document.frm_goods.select2.options[document.frm_goods.select2.length] = new Option(strArr[num][0],strArr[num][3]);
}
}
if(document.getElementById("select2").options.length==0)
{
//alert("按钮可用");
document.getElementById("sub_ok").disabled=false;
}
else{
//alert("按钮不可用");
document.getElementById("sub_ok").disabled=true;
}
checktwo();
}

function checktwo()
{
var num,str;
document.frm_goods.select3.length=0;

document.getElementById("selec2").options.length

//document.frm_goods.select3.options[0] = new Option('请选择','');
str = document.getElementById("select2").value;
//获得父级菜单的ID
str = str.substring(0,4);

for(num=0;num<strArr.length;num++)
{
//通过匹配值来判断第三个OPTION的值
if(strArr[num][1]==str)
{
      document.frm_goods.select3.options[document.frm_goods.select3.length] = new Option(strArr[num][0],strArr[num][3]);
}
}
//alert("select3 的选项为:"+document.getElementById("select3").options.length);
if(document.getElementById("select3").options.length==0){
//alert("按钮可用");
document.getElementById("sub_ok").disabled=false;
}
else{
//alert("按钮不可用");
document.getElementById("sub_ok").disabled=true;
}
}

function initbtn_ok(){
document.getElementById("sub_ok").disabled=false;
}
</script>
</head>

解决方案 »

  1.   

    <body>
    <div id="main">
      <!--外框架-->
      <div id="header">
        <!--顶部-->
      </div>
      <div id="subnav">
        <form id="frm_goods" name="frm_goods" method="post" action="">
          <table summary="The information write by black.angel" width="100%" height="270" border="0" cellpadding="0" cellspacing="0">
            <tr>
              <td height="30">&nbsp;</td>
              <td width="23%" valign="middle"><h1>请选择类别:</h1></td>
              <td width="23%" valign="top">&nbsp;</td>
              <td width="20%" valign="top">&nbsp;</td>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td height="162">&nbsp;</td>
              <td valign="top"><select id="select1" name="select1" size="12" style="width:200px" onchange="checkone();">
                  <option value="03">女人/女士箱包/女装 -></option>
                  <option value="04">男人/男士精品/男装/军刀 -></option>
      <option value="11">童装/婴儿服/鞋帽/亲子装 -></option>
                </select></td>
              <td valign="top"><select name="select2" style="width:200px" size="12" onchange="checktwo();">
                </select>
              </td>
              <td valign="top"><select name="select3" style="width:200px" size="12" onchange="initbtn_ok()">
                </select></td>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td height="39">&nbsp;</td>
              <td valign="top">&nbsp;</td>
              <td align="center" valign="middle"><input type="button" id="sub_ok"  name="sub_ok" value="已阅读以下规则,继续" class="input" disabled="false"/></td>
              <td valign="top">&nbsp;</td>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td width="11%" height="39">&nbsp;</td>
              <td colspan="3" valign="top"></td>
              <td width="22%">&nbsp;</td>
              <td width="1%">&nbsp;</td>
            </tr>
          </table>
        </form>
      </div>
      <div id="footer">
        <!--底部内容-->
      </div>
    </div>
    </body>
    </html>
      

  2.   

    在FF里面老是报错误  而且不能显示。。错误行 
    //选择第一个下拉列表框 
    function   checkone() 

    var   select1_value   =   document.frm_goods.select1.value; 
    var   num; 
    document.frm_goods.select2.length=0; 
    for(num=0;num <strArr.length;num++) 

    //通过匹配值来判断第二个OPTION的值 
    if(strArr[num][1]==select1_value) 

                document.frm_goods.select2.options[document.frm_goods.select2.length]   =   new   Option(strArr[num][0],strArr[num][3]); 


    if(document.getElementById("select2").options.length==0) 

    //alert("按钮可用"); 
    document.getElementById("sub_ok").disabled=false; 

    else{ 
    //alert("按钮不可用"); 
      

  3.   

    if(document.getElementById( "select2").options.length==0) 
     <td   valign="top"><select name="select2" style="width:200px" size="12" onchange="checktwo();"> </select> </td> 你的select连id都没有,你怎么document.getElementById?????<select name="select2" style="width:200px" id="select2" size="12" onchange="checktwo();"> </select>
      

  4.   

    document.getElementById( "select2 ").options.length==0
    这语句,在IE和FF下都能用
    不过,IE中如果没有id有name属性,也可以得到对象,而FF不行,你加上id
      

  5.   

    两处错误:
    1.
    function   checktwo() 

    var   num,str; 
    document.frm_goods.select3.length=0; document.getElementById("selec2").options.length
    //这里应该是select2,丢了字母t
    2.关键错误在这,后两个select没有id属性
    <td   valign="top"> <select id="select2"  name="select2"   style="width:200px"   size="12"   onchange="checktwo();"> 
                            </select> 
                        </td> 
                        <td   valign="top"> <select id="select3"  name="select3"   style="width:200px"   size="12"   onchange="initbtn_ok()"> 
                            </select> </td> 
      

  6.   

    谢谢各位大侠!!!小弟犯低级错误了。可是为什么在IE里面没有定义ID值 竟然可以用document.getElementById()方法来捕获对象????突然之间觉得IE好神奇!!!顶!!!!!