Input / Change / Keyup / focus 事件未触发

Input / Change / Keyup / focus event not fired

我有这个功能:

showReview: function(){
            var main = document.getElementById("main");
            var ins =  main.getElementsByTagName("INPUT");
            var rev = $("reviewcontent").is(":hidden");
            for (var i = 0; i<ins.length; i++){
                $(ins[i]).on('show input keyup focus change', this.getInVals());
                console.log("Invals update from input");
            }
            if(!rev){
                this.addReview();
            }
        }

第一次加载页面时会触发事件,但不会在更改输入或再次关注另一个输入时触发。我不知道为什么。我想到它只听主的最后输入但事实并非如此

$(ins[i]).on('show input keyup focus change', this.getInVals());

删除 getInVals 调用。尝试将 getInVals() 更改为 getInVals

$(ins[i]).on('show input keyup focus change', this.getInVals);

我不明白你想做什么或说什么,但我正在做类似的事情,如果有帮助,你可以举个例子。

$('.look').on('keyup change', function () {
    var value = $(this).val().toLowerCase();
    var what_place = $(this).parents('.collapse').find('.col-sm-0');
    $(what_place).each(function(){
        $(this).css({"display": "block"});
        if(value == ''){
            $(this).css({"display": "block"});
        }
        else if($(this).find('h5').text().toLowerCase().indexOf(value) < 0){
            $(this).css({"display": "none"});
        }
    });
});