簡體   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