如何找出触发了哪个事件监听器

dus*_*ust 3 javascript events

我有一堆输入字段,其中使用for循环和类名称附加事件侦听器.有没有办法可以获取触发的输入字段的ID?我有大约40个输入字段,我想从触发的输入中获取id并将其作为变量传递给函数.

HTML -

<input type="text" id="t11Text1" class="text1 input">
<input type="text2" id="t11Text2" class="text2 input">
<input type="text" id="t12Text1" class="text1 input">
<input type="text2" id="t12Text2" class="text2 input">
Run Code Online (Sandbox Code Playgroud)

JS -

var onChange = document.querySelectorAll('.input');
var onChangeSelect = document.querySelectorAll('.select');

for (var i = 0; i < onChange.length; i++) {
        onChange[i].addEventListener("input", function() {
        myFunction();
    });
}
Run Code Online (Sandbox Code Playgroud)

Jos*_*ier 9

您可以访问匿名函数中的event对象,并且event.target.id将是id元素的对象.

var onChange = document.querySelectorAll('.input');
var onChangeSelect = document.querySelectorAll('.select');

for (var i=0; i < onChange.length; i++){
   onChange[i].addEventListener("input", function (event) {
       // event.target.id
       myFunction();
   });
}
Run Code Online (Sandbox Code Playgroud)