javascript - 如果使用 innerHTML 创建按钮将不起作用
问题描述
我有这种结构
<button ng-click="something(1)">click!</button>
<div id="place"></div>
something() 在这种情况下有效,但是如果我尝试在 js 代码上使用 innerHTML 制作另一个按钮
str="<button ng-click=\"something(2)\">click 2!</button>"
document.getElementById("place").innerHTML = str;
thrn 第二个按钮,由 innerHTML 创建的那个,看起来很正常,但在单击时不调用函数 something()
有没有其他方法可以添加按钮?按钮应在页面运行时按程序生成
非常感谢!
解决方案
<script>
let btn = document.createElement("button");
btn.innerText = "click2"
// class
btn.classList = [];
// on click function
btn.onclick = () => {
}
document.getElementById("place").innerHTML = "";
document.getElementById("place").appendChild(btn)
</script>
推荐阅读
- python - 如何在没有 itertools 的情况下替换 itertools.product?
- java - Maven 编译器插件使用自动 java 9 模块失败
- sql - 计算 varchar 数组 Postgres 中不同元素的数量
- python - 根据单独的 csv 中两列的两个值之间的比较删除 csv 行
- asp.net-core - 身份服务器 4 备用注销重定向 uri
- c# - 如何搜索客户并能够更新他们?
- r - 如何将图像渲染成图块?
- firebase - 如何在 Flutter 应用程序中显示 Firestore 数据库中的文档
- amazon-web-services - 尝试连接到我在 Amazon 上的 EC2 实例时出现问题
- javascript - 在 Javascript 函数中打开的对话框不允许选择文件