2012-05-25 52 views
2

我试图完全删除一个脚本到外部.js文件,并用外部文件中的addEventListener替换onClick事件。我不能得到这个工作:用addEventListener替换onClick

http://jsfiddle.net/kjmatthews/DE26x/

我的函数是一个稍微复杂一些,但基本上从http://jsfiddle.net/madBYK/UumUP/复制,从developer.mozilla.org pageelement.addEventListener链接。

添加onclick="return hidePurchased();"<input>标签确实工作,所以这个问题是不是与hidePurchased()功能。

任何帮助将不胜感激!

回答

4

getElementsByName返回NodeList,不具有addEventListener方法,所以你需要实际,提领结果

尝试选择您正打算点击监听绑定的家伙:

var foo = document.getElementsByName("hide")[0]; 

工作例如:

http://jsfiddle.net/DE26x/9/

+0

辉煌。谢谢。 – Kyle

1

这里你去。 http://jsfiddle.net/DE26x/8/从我所知道的,你只会忘记选择foo数组的第一个索引。它现在似乎正在工作。检查一下,你会发现它在这件事上没有任何一堂课。我还添加了css来隐藏noshow,以便您可以看到它的工作。