在for循环中将onClick应用于元素数组

Por*_*ori 5 javascript loops onclick

我试图将onClick事件应用于文档中的元素数组,如下所示:

for (var i = 0; i < myElems.length; i++)
     myElems[i].onClick = "someFunction(this)";
Run Code Online (Sandbox Code Playgroud)

代码放在body标签的onLoad事件的init()函数内.我注意到文档加载时,功能不起作用.

我注意到,如果我添加一个alert()来告诉我函数是否是问题:

for (var i = 0; i < myElems.length; i++)
     myElems[i].onClick = "alert('It worked!')";
Run Code Online (Sandbox Code Playgroud)

该文档将加载并执行所有元素的警报,而不考虑我是否实际点击了该元素.

我究竟做错了什么?

Fab*_*tté 2

属性名称是onclick.

onClick尽管是有效的 HTML,但在 JS 中不存在,因为它区分大小写。

此外,您还必须为它分配一个函数引用或表达式,正如大卫回答的那样(+1)。

小提琴