更改HTML操作="&引用;使用JavaScript

更改HTML操作="&引用;使用JavaScript,javascript,html,Javascript,Html,如何更改我尝试使用的action=“somthing”中的字符串 document.getElementsByClassName 但这似乎没有改变任何事情 我的HTML ...... ......... <div class="my_button button" action='play_car'></div> ..... ...... 我也试过了 HTML 它只返回null返回一个集合,而不是单个元素 返回具有任何给定类名的所有子元素的数组。在document对象

如何更改我尝试使用的action=“somthing”中的字符串

document.getElementsByClassName
但这似乎没有改变任何事情

我的HTML

......
.........
<div class="my_button button" action='play_car'></div>
 .....
......
我也试过了 HTML

它只返回null

返回一个集合,而不是单个元素

返回具有任何给定类名的所有子元素的数组。在document对象上调用时,将搜索整个文档,包括根节点

假设只返回一个元素,则:

var elementsWithClass = document.getElementsByClassName('my_button')
elementsWithClass[0].action = "play_boat";
但是,使用循环可能更合适-类名通常设计为与多个元素一起使用,id(以及
getElementById
)用于单个/唯一元素


不幸的是,
getElementsByClassName
甚至和IE8一样是“最新”的浏览器。要处理此问题,请使用跨浏览器库(jQuery或您的首选项)或polyfill。

getElementsByClassName将返回所有元素的数组。如果只想处理一个元素,请使用document.getElementById。旧浏览器也不支持GetElementsByCassName。如果这是一个问题,可以改用jQuery。

如果只有一个元素具有此类名,则可以获得第一项:

document.getElementsByClassName('my_button')[0].action = "play_boat";
如果您有许多,请迭代它们:

for (var i in document.getElementsByClassName('my_button')) {
    document.getElementsByClassName('my_button')[i].action = "play_boat"; 
}

请使用类“my_button”检查javascript代码的位置是否在元素后面。

谢谢您的帮助!但是我得到了一个错误“TypeError:elementsWithClass[0]未定义”@user3159101然后没有找到匹配的元素-elementsWithClass.length是0(访问未定义的数组索引返回未定义的JavaScript)。请确保在相关DOM可用后运行该脚本。这样您就可以对其进行迭代。如果我尝试使用您的代码类型时出现此错误,我将非常抱歉。错误:document.getElementsByClassName(…)[0]为undefined@user3159101然后没有找到匹配的元素-elementsWithClass.length为0(访问undefined数组索引返回undefined in JavaScript)。确保在相关DOM可用后运行脚本。
var elementsWithClass = document.getElementsByClassName('my_button')
elementsWithClass[0].action = "play_boat";
document.getElementsByClassName('my_button')[0].action = "play_boat";
for (var i in document.getElementsByClassName('my_button')) {
    document.getElementsByClassName('my_button')[i].action = "play_boat"; 
}