问答详情
源自:9-2 getElementsByName()方法

getElementsByName()方法返回的不是

<!DOCTYPE HTML>

<html>

<head>

<script type="text/javascript">

function getnum(){

  var mynode= document.getElementsByName("myt"); ;  

  alert(mynode);

}

</script>

</head>

<body>

<input name="myt" type="text" value="1">

<input name="myt" type="text" value="2">

<input name="myt" type="text" value="3">

<input name="myt" type="text" value="4">

<input name="myt" type="text" value="5">

<input name="myt" type="text" value="6">


<br />

<input type="button" onclick="getnum()" value="看看有几项?" />

</body>

</html>

为什么我输出来的结果是这样的?不应该是数组吗?


http://img.mukewang.com/57eb31ec0001178803680157.jpg

提问者:青春不是年华而是心境 2016-09-28 10:59

个回答

  • 我是攻城狮3922093
    2016-10-19 23:38:01

    语句中  var mynode= document.getElementsByName("myt"); ;  多了一个分号。都一个分号表示的意思就不一样

  • 慕粉3951534
    2016-10-12 11:28:25

    你没有错,通过 getElementsByName 得到的结果是一个节点对象列表,而不是我们所谓的数组,不过可以通过和数组相同的方式去调用属性和方法。

    类似的还有,getElementsByTagName、getElementsByClassName,得到的结果都是一个节点列表。

  • 舍下
    2016-09-28 13:26:20

    <script type="text/javascript">

    function getnum(){

      var mynode= document.getElementsByName("myt"); ;  

      alert(mynode);

    }

    </script>

    语句中  var mynode= document.getElementsByName("myt"); ;  多了一个分号。

  • 慕侠5371817
    2016-09-28 13:16:54

    alert(mynode.innerHTML);