应该是你程序问题,不在onload

解决方案 »

  1.   

    下面是源程序,麻烦大家看看.
    <script language="javascript">
    var standardArr= new Array();
    standardArr[0]="GB-1";
    standardArr[1]="厂标-1";
    standardArr[2]="fdf";
    standardArr[3]="asdfa";
    standardArr[4]="rg";
    standardArr[5]="sdf";
    standardArr[6]="3.2";
    standardArr[7]="4";
    standardArr[8]="32";
    var steelidArr= new Array();
    steelidArr[0]="刚类";
    steelidArr[1]="1Cr18Ni9Ti";
    steelidArr[2]="FeCr";
    </script><html>
    <head>
    <title> 钢铁材料的力学性能指标</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </head><body  onLoad="javascript:initBody()" background="../image/bg.gif">
    <div align="center" ><font color="#0000FF" size="+2"  >钢铁材料的力学性能指标 </font></div>
    <font size="+2">查询:</font>
    <table  name="thetable" width="100%" border="1" align="center" cellpadding="5%" cellspacing="5%" >
        <tr>
    <form name="bystandard" action="query.jsp" method="post">
        <td width="25%" align="right"><input  type="submit" value="按标准查询:"></td>
        <td width="34%">模糊输入<input name="standard" onchange="javascript:SelectStandard(this)">&nbsp;&nbsp;然后:</td>
        <td width="41%">选择<select  onChange="javascript:UpdateStan(this)" name="standardArrS" >
                           <option value="">-全部-</option>
                     </select>
    </td>
    </form>
    </tr>
        <tr>
    <form name="bysteelid"  action="query.jsp" method="post">
       <td align="right"><input  type="submit" value="按特殊钢号查询:"></td>
           <td>模糊输入<input name="steelid" onchange="javascript:SelectSteelID(this)">&nbsp;&nbsp;然后:</td>
        <td>选择<select  onChange="javascript:UpdateSteel(this)" name="steelidArrS" >
                           <option value="">-全部-</option>
                     </select>
    </td>
    </form>
    </tr>
    </table>
    <font size="+2"><a href="addnew.jsp">添加新纪录</a></font>
    </body>
    </html>
    <script language="javascript">
    //var standardArr= new Array();
    //standardArr[0]="ABC123"
    //standardArr[1]="BCD234"function SelectStandard(obj){
       var ListMsg=document.bystandard.standardArrS;
       ListMsg.length=0;
       ListMsg.options[0]=new Option("-全部-","")
       var k=1;
       var tmpValue="";
       if(obj.value!=""){
      for(I=0;I<standardArr.length;I++){
      if(standardArr[I].indexOf(obj.value)!=-1){
         tmpValue=standardArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
      }
      }
       }
       else{
      for(I=0;I<standardArr.length;I++){
         tmpValue=standardArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
      }
       }
       ListMsg.selectedIndex=0;
    }
    </script>
    <script language="javascript">
    //var steelidArr= new Array();
    //steelidArr[0]="ABC123"
    //steelidArr[1]="BCD234"function SelectSteelID(obj){
       var ListMsg=document.bysteelid.steelidArrS;
       ListMsg.length=0;
       ListMsg.options[0]=new Option("-全部-","")
       var k=1;
       var tmpValue="";
       if(obj.value!=""){
      for(I=0;I<steelidArr.length;I++){
      if(steelidArr[I].indexOf(obj.value)!=-1&&steelidArr[I]!="刚类"){
         tmpValue=steelidArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
      }
      }
       }
       else{
      for(I=0;I<steelidArr.length;I++){
                if(steelidArr[I]!="刚类"){
         tmpValue=steelidArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
                }
      }
       }
       ListMsg.selectedIndex=0;
    }function UpdateStan(obj){
    if(obj.value!=""){
    document.bystandard.standard.value=obj.value;
    }
    else{}
    }function UpdateSteel(obj){
    if(obj.value!=""){
    document.bysteelid.steelid.value=obj.value;
    }
    else{}
    }function initBody(){
         for(I=0;I<standardArr.length;I++){
         tmpValue=standardArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
      }
      for(I=0;I<steelidArr.length;I++){
         tmpValue=steelidArr[I];
     ListMsg.options[k]=new Option(tmpValue,tmpValue)
     k++
      }
    }
    </script>
      

  2.   

    function initBody(){
       var ListMsg=document.bysteelid.steelidArrS;
         for(I=0;I<standardArr.length;I++){
         tmpValue=standardArr[I];
     ListMsg.options[ListMsg.length]=new Option(tmpValue,tmpValue)
      }
      for(I=0;I<steelidArr.length;I++){
         tmpValue=steelidArr[I];
     ListMsg.options[ListMsg.length]=new Option(tmpValue,tmpValue)
      }
    }
      

  3.   

    我想用已有的两个函数,
    function initBody(){
      var obj="";
      SelectStandard(obj);
      SelectSteelID(obj);
    }但是obj传入 SelectStandard(obj);和  SelectSteelID(obj);后又执行了obj.value,怎样定义一个值为""的obj,使obj.value="";而不是obj="".