var dlts = document.getElementsByName("select1");
var num = dlts.length+1; //个数for(var i=0;i<num;i++)
   if(dlts[i].value==""){
      alert("相应的text1也不能为空");
      return;
   }

解决方案 »

  1.   

    得到表单中select个数可以用
    <form name=form1>
    <select name=select1>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <select name=select2>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <select name=select3>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <input name=asf type=hidden>
    <input name=asssf type=text>
    </form>
    <select name=select4>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <script language=javascript>
    alert(document.form1.getElementsByTagName("select").length);
    </script>
      

  2.   

    唉,可能是我的表达不是很清楚,我这里table动态增加行的,每个行里包含一个select和一个text输入框还有一个删除按钮,比如说select 选择产品,text填写这个产品的描述。可以动态删除和增加行。
    但是保存的时候我需要检测,如果一个产品都没有选择,提示要添加产品,而且选择产品后必须要填写相应的产品描述才能保存。
    同一个页面可以多个table,每个table都可以实现这样的功能。所以每个table都有一个id,同一个table里面的select名字一样,text名字也一样。
    所有的table放在一个form里面。
      

  3.   

    hbhbhbhbhb1021 ,一个form里面有多个select,如你的代码把select4也放到同一个标单内,alert出来的selet1个数就是0了,为什么?怎么样才能出来正确的个数?<form name=form1>
    <select name=select1>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <select name=select2>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <select name=select3>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <select name=select4>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    <option>dsfsd</option>
    </select>
    <input name=asf type=hidden>
    <input name=asssf type=text>
    </form><script language=javascript>
    alert(document.form1.getElementsByTagName("select1").length);
    </script>
      

  4.   

    var select1 = document.getElementsByName("select1");
    var text1= document.getElementsByName("text1");
    var num=select1.length
    for(var i=0;i<num;i++)
        {
            if(select1[i].value==""&&text1[i].value=='')
               {
                   alert("相应的text1也不能为空");
                   break;
               }
        }
      

  5.   

    <HTML>
    <BODY>
    <form id=a name="a">
     <table id=containerTable>
      
      <tr>
       <td>
            <SELECT size=2 id=select1 name=select1>
             <OPTION></OPTION>>
              <OPTION value=1> 1</OPTION>
            </SELECT>
       </td>
       <td>
        <INPUT type="text" id=text1 name=text1>
       </td>
      </tr>
      <tr>
       <td>
            <SELECT size=2 id=select1 name=select1>
             <OPTION></OPTION>>
              <OPTION value=1> 1</OPTION>
              <OPTION value=2> 2</OPTION>
            </SELECT>   </td>
       <td>
        <INPUT type="text" id=text1 name=text1>
       </td>
      </tr>
      <tr>
       <td>
            <SELECT size=2 id=select1 name=select1>
             <OPTION></OPTION>>
              <OPTION value=1> 1</OPTION>
              <OPTION value=2> 2</OPTION>
              <OPTION value=3> 3</OPTION>
            </SELECT>   </td>
       <td>
        <INPUT type="text" id=text1 name=text1>
       </td>
      </tr>
    </table>
    <input type=button value=test onclick="testFun();">
    </form>
    </BODY>
    </HTML>
    <script>
    function testFun()
    {
      var tableRows=containerTable.rows;
      for(var i=0;tableRows!=null && i<tableRows.length;i++)
      {
        alert(tableRows[i].all.select1.outerHTML);
      }
    }</script>