使用getElementsByTagName()获取标签进行onclick的问题(小问题记录)

在学习时,使用下面代码获取标签进行onclick时发现没反应

<body>

<a>单击按钮来改变这一段中的文本。</a><br>
<button>按钮1</button><br>
<button>按钮2</button><br>
<script type="text/javascript">    
    var aEle=document.getElementsByTagName('button');
    aEle.onclick=function(){
        alert('你好');
    }
</script>

</body>

百度后,发现原来是因为是getElementsByTagName()可能获取到多个button标签,因此是一个集合的存在,给集合注册onclick事件需要加上索引,正确的代码如下:

<body>

<a>单击按钮来改变这一段中的文本。</a><br>
<button>按钮1</button><br>
<button>按钮2</button><br>
<script type="text/javascript">
    function aClick(){
           alert("你好");
    }
    var aEle=document.getElementsByTagName('button');
    for(var i=0;i<aEle.length;i++){
        aEle[i].onclick=aClick;
    }
</script>

</body>

 

posted @ 2021-01-26 15:00  PLG  阅读(566)  评论(0编辑  收藏  举报