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)
如果您想测试,只需运行代码并单击按钮即可。(抱歉,如果我不清楚,我是新来的)。
请更换:
e.target.id 和 e.currentTarget.id
current target始终引用事件处理程序已附加到的元素,而不是 Event.target,后者标识发生事件的元素并且可能是其后代。