使用addEventListener添加onclick事件表示未定义类型错误undefined不是函数

时间:2014-07-23 21:25:27

标签: javascript jquery javascript-events

我有这个特定的对象,我正在创建,即我有方法,我试图将事件监听器附加到方法但它继续显示"未捕获类型错误未定义不是一个函数"在这种情况下,我尝试使用函数addEventListener。

我在这里做错了吗?我是JS开发的新手。

var a = function() {

    handleClick = function() {
        var inputs = document.getElementsByClassName("button");
        for(var i=0; i<inputs.length; i++){
            i.addEventListener("click", numberClick, false);
        }
    }

    numberClick = function(e) {
        alert("this is a button");
    }

}();

1 个答案:

答案 0 :(得分:0)

你应该inputs[i].addEventListeneriinput s的类数组对象的索引。因此,第一个i将是0,但inputs[i]将是您期望的input元素。

var a = function (){
    var handleClick = function(){
        var inputs = document.getElementsByClassName("button");
        for(var i=0;i<inputs.length;i++){
            inputs[i].addEventListener("click", numberClick, false);
        }
    };

    var numberClick = function(e){
        alert("this is a button");
    };
}();