将onclick事件添加到动态添加的按钮?

新手上路,请多包涵

我在 html 中动态添加一个按钮,如下所示: 单击该按钮我想调用一个 Javascript 函数:

 var but = document.createElement("button");

but.value="delete row";

but.setAttribute("onclick","callJavascriptFunction()");
//this is not working

but.onclick="callJavascriptFunction()"
//this is also not working

document.getElementById("but").onclick="callJavascriptFunction()"
//this is also not working

but.id="but"+inc;

有什么方法可以解决这个问题吗?请帮助我。在此先感谢

原文由 sanjeev 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 274
2 个回答

尝试这个:

 but.onclick = callJavascriptFunction;

或者通过用另一个元素包裹它来创建按钮并使用 innerHTML:

 var span = document.createElement('span');
span.innerHTML = '<button id="but' + inc +'" onclick="callJavascriptFunction()" />';

原文由 jerjer 发布,翻译遵循 CC BY-SA 3.0 许可协议

从您的表达式中删除不起作用的 () 将获得您需要的预期结果。

 but.setAttribute("onclick",callJavascriptFunction);
but.onclick= callJavascriptFunction;
document.getElementById("but").onclick=callJavascriptFunction;

原文由 Brett Walker 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题