2014-03-04 37 views
0

嗨在我的代码中,我会添加一些动态按钮。补充说,我加入了一个事件监听器如下Javascript addEventListener动态按钮

document.querySelector("input[name='btn']").addEventListener("click", runFunction); 

但我正在逐渐“在Chrome控制台无法调用空的方法的addEventListener”以前,我怎么能事件听者添加到是不是元素在平原还不存在使用Javascript?

回答

0

尝试做它在文件准备好。如果你使用jQuery,你可以做这样的事情

$(function() { 

document.querySelector("input[name='btn']").addEventListener("click", runFunction); 

}); 

$(document).ready(function() { /* code here */ });

,如果你不使用jquery,您可以使用在window.onload或window.document.onload

2

不能添加一个侦听尚不存在的元素。无论是在页面(身体紧贴标签之前)的结束或这样执行脚本:

window.onload = function() { 
    document.querySelector("input[name='btn']").addEventListener("click", runFunction); 
}; 

document.querySelector()返回null,如果它没有找到该选择器相匹配的元素,你可以不调用空对象的方法。