我做了一个小扩展,在html页面插入了按钮,我在每个按钮上插入了onClick
个事件,但是当我按下它们时它们不起作用。我在这个网站上找到了一些主题,一个人在谈论addEventListener
,但我无法使用它。我的代码是这样的:
var setButton = "<button type='button' id='setter2' onclick=Set_one(this.id)>set</button>";
var str = getRow.insertCell(-1);
str.innerHTML = setButton;
答案 0 :(得分:0)
在Chrome扩展程序中,内联代码为forbidden。您根本不能使用onclick
属性来扩展脚本和CSP cannot be relaxed。
您必须使用addEventListener
才能使其正常运行。它并不难,并且在上面链接的文档中有所涉及。
var setButton = "<button type='button' id='setter2' onclick=Set_one(this.id)>set</button>";
var str = getRow.insertCell(-1);
str.innerHTML = setButton;
document.getElementById("setter2").addEventListener("click", function() {
Set_one(this.id);
});
如果您不使用innerHTML
作业并直接创建/追加元素,情况会更好:
var setButton = document.createElement("button");
setButton.textContent = "set";
setButton.id = "setter2";
setButton.addEventListener("click", function() {
Set_one(this.id);
});
getRow.insertCell(-1).appendChild(setButton);