<script type="text/javascript">
<!--
function lee(){
var Selectname = document.getElementById("S_Provincename");
var SelectchildNodes = Selectname.childNodes.length;
var SelectLength = Selectname.length;
alert( " SelectchildNodes=" + SelectchildNodes + "\n" + " SelectLength="+SelectLength);
}
//-->
</script>
html的中是这样的
<select id="S_Provincename" onchange="lee();">
<option value="default">--请选择--</option>
</select>  
<input type="button" value="getLength" onclick="lee();"/>

解决方案 »

  1.   

    因为你在<select>标记中有空格,空格也会被认为是节点,你这样写就是一个了
    <html>
    <script>
    function lee(){
      var Selectname = document.getElementById("S_Provincename");
                var SelectchildNodes = Selectname.childNodes.length;
                alert( "  SelectchildNodes=" + SelectchildNodes);
    }
    </script>
          <select id="S_Provincename"><option value="default">--请选择--</option></select>
      <input type="button" onClick="lee()" value="ok">
    </html>如果要求Select下option节点的数量写成这样就不怕有空格了。
    var SelectchildNodes = Selectname.getElementsByTagName("option").length;
      

  2.   

    谢谢mbx615(白天鬼混挣钱,晚上挣钱鬼混) 的回复,确实无你所说的。可是搞不懂 ,那个空格在哪?因为写html的时候,有种缩紧的习惯,但是它在html中没有显示的阿!?
      

  3.   

    用回车换行就会有换行符,html中不显示,但他还是存在的