使用 event.target 获取按钮 id 它不起作用

Dav*_*ato 3 html javascript events

我有三个带有图像的按钮,我试图获取单击的按钮的 ID,但是当我单击按钮(带有图像)时,它只返回图像的 ID,而不是按钮(有时返回按钮)。我缺少什么吗?或者另一种方法可以做到这一点?请帮忙!

这是我的代码:

buttons = document.querySelectorAll('button');
buttons.forEach((btn) => btn.addEventListener("click", (e) => {
    let userChoice = e.target.id;
    console.log(userChoice);
}));
Run Code Online (Sandbox Code Playgroud)
<button id="myBtn1"><img src="images/img1.png"></button>
<button id="myBtn2"><img src="images/img2.png"></button>
<button id="myBtn3"><img src="images/img3.png"></button>
Run Code Online (Sandbox Code Playgroud)

如果您想测试,只需运行代码并单击按钮即可。(抱歉,如果我不清楚,我是新来的)。

Alo*_*iel 7

请更换:

e.target.id 和 e.currentTarget.id

current target始终引用事件处理程序已附加到的元素,而不是 Event.target,后者标识发生事件的元素并且可能是其后代。