繁体   English   中英

ElementById查找元素,但不会添加事件监听器(Chrome扩展程序)

[英]ElementById finds element but won't add event listener (Chrome extension)

我在扩展程序的弹出窗口中有一个带有代码的表单:

<button type="submit" id="update" class="btn btn-primary">Submit</button>

然后在附件脚本中,执行以下代码:

document.addEventListener("DOMContentLoaded", function(event){
  var button = document.getElementById("update");
  button.addEventListener("click", test);
  button.style.color="red";
});



function test(){
  console.log("test");
}

该代码的“ button.style.color =” red“”部分有效,因此我知道该按钮已成功找到。 但是,在加载和单击按钮时,我仍然收到此错误:

Uncaught TypeError: Cannot read property 'addEventListener' of null

我该如何解决 :(

它正在我的演示中运行,请参阅: JSBin

    document.addEventListener("DOMContentLoaded", function(event){
     var button = document.getElementById("update");
     button.addEventListener("click", test);
     button.style.color="red"; 
    });

这可能是重复的无法读取null的属性'addEventListener',但是,如果您仍然无法详细解释,请尝试这些解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM