document.FormAdd.Hotel_Id_Type.options.length

解决方案 »

  1.   

    这样,还是不行呀。它从两个删除到一个时,还是报错了,
    是不是javascript也存在着缓存的原因,它还是认为是多个呢?
      

  2.   

    因为,我的是从数据库中读出记录来,有几条就显示几人下拉框,然后,用户可以通过javascript删除,增加下拉框,比如,数据库中有两条,然后,我用javascript删除一条,这时应该只剩一个了。alert(document.FormAdd.Hotel_Id_Type.length)等于1,并不等于它里面的option的数量
    document.FormAdd.Hotel_Id_Type.options.length 用它会出错
      

  3.   

    删除大概就是这样的,楼主要什么样的效果没太看懂,什么叫必须为3????下面是3个重名的select,指定删除第一个select
    <script language="javascript">
    function Del()
    {
    document.forms[0].mySel[0].options.remove(document.forms[0].mySel[0].length-1);
    }
    </script>
    <form>
    <select name="mySel">
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">4</option>
    <option value="1">5</option>
    <option value="1">6</option>
    <option value="1">7</option>
    <option value="1">8</option>
    <option value="1">9</option>
    </select>
    <select name="mySel">
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">4</option>
    <option value="1">5</option>
    <option value="1">6</option>
    <option value="1">7</option>
    <option value="1">8</option>
    <option value="1">9</option>
    </select>
    <select name="mySel">
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">1</option>
    <option value="1">4</option>
    <option value="1">5</option>
    <option value="1">6</option>
    <option value="1">7</option>
    <option value="1">8</option>
    <option value="1">9</option>
    </select>
    <input type="button" value="Del" onClick="Del()">
    </form>
      

  4.   

    当有多个select时,alert的是select的数量,当只有一个时,alert出来的是option的长度
    如果想显示select的个数用alert(document.getElementsByName("Hotel_Id_Type").length);如果想显示option的长度用alert(document.getElementsByName("Hotel_Id_Type").options.length);