首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >getElementsByTagName in JavaScript

getElementsByTagName in JavaScript
EN

Stack Overflow用户
提问于 2014-03-29 05:24:20
回答 3查看 1.4K关注 0票数 0

我对纯JavaScript的语法很陌生;您知道为什么"getElementsByTagName“在我的简单测试中不起作用吗?

代码语言:javascript
复制
 var btn = document.getElementsByTagName('button');
console.log(btn);


btn.onclick=function(){
    alert('entered');
document.getElementById("demo").innerHTML="test";
}

小提琴

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-29 05:27:59

应该是

代码语言:javascript
复制
var btn = document.getElementsByTagName('button')[0];

而不是

代码语言:javascript
复制
var btn = document.getElementsByTagName('button');

getElementsByTagName返回匹配元素的数组。因此,使用0索引访问按钮。

更多关于getElementsByTagName()的信息

您可以提供特定的id on按钮,并可以使用getElementById()

JS

代码语言:javascript
复制
var btn = document.getElementById('myButton');

代码语言:javascript
复制
   <button id="myButton">....</button>
票数 0
EN

Stack Overflow用户

发布于 2014-03-29 05:30:50

getElementsByTagName返回一个数组,而不是一个元素。您需要循环查看结果,并分别为每个结果附加一个函数,如下所示:

代码语言:javascript
复制
var buttons = document.getElementsByTagName('button');

for( var x=0; x < buttons.length; x++ ) {

   buttons[x].onclick = function(){

       alert('entered');
       document.getElementById("demo").innerHTML="test";
   };
}
票数 1
EN

Stack Overflow用户

发布于 2014-03-29 06:06:40

用btn代替btn就像这样-

代码语言:javascript
复制
   btn[0].onclick=function(){
     alert('entered');
     document.getElementById("demo").innerHTML="test"; 
   }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22727403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档