javascript - 点击事件未附加到按钮

标签 javascript

我需要在 button 标记上附加一个点击事件。我尝试过 addEventLister,但仍然不起作用。

widget.innerHTML = "<button id=\"w_btn\">do action</button>";

w_btn = document.getElementById("w_btn");

w_btn.addEventListener("click", 
    function() {
        alert("sdf");
    }
);

最佳答案

第三个可选是 required在某些浏览器中。
以下代码应该适用于所有合适的浏览器( fiddle : http://jsfiddle.net/5hnPP/2/ ):

var widget = document.getElementById("widget");
widget.innerHTML = "<button id=\"w_btn\">do action</button>";
var w_btn = document.getElementById("w_btn"); //Added var
w_btn.addEventListener("click",
    function() {alert("test")},
    false
);

另一个可能的原因是存在另一个 ID 为 w_btn 的元素,该元素出现在 #widget 元素之前。要解决这个问题,您可以调整代码。由于您覆盖了 #widget 元素的内容,因此第一个也是唯一的内容是按钮。定义:

var w_btn = widget.firstChild;

最后一种可能是您处于严格模式。在严格模式下,禁止使用未声明的变量

关于javascript - 点击事件未附加到按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302758/

相关文章:

Javascript 上传文件 MVC4 操作

javascript - php 分号分隔,条件有问题

javascript - 如何使父菜单项仅在第二次单击时定向到其链接

javascript - 如何在动态表的特定列中插入/更新项目?

javascript - 添加箭头到图片库 - JS

javascript - react .js : the key value in each child component should be unique?

javascript - 我想在单击更新按钮时自动获得状态空间

javascript - JavaScript 在 Web 应用程序的 MVC 模式中处于什么位置?

javascript - 找不到已删除的图像

javascript - 如何使用 React 访问 css 类?