我有一个像这样的反应组件的一部分:
var headerElement = someBoolean ? : 'some string'; return{headerElement} ;
以及第th个元素的单击处理程序:
_onHeaderClick(event) { event.preventDefault(); console.log(event.target); },
我想捕获de th元素.当headerElement是'some string'时它工作正常,但是当它是一个输入元素时,input元素是event.target字段中引用的元素.实现这一目标的最佳方法是什么?
由于您将处理程序绑定到th
您可以使用currentTarget属性.将目标物业是指调度事件的元素.
_onHeaderClick(event) { event.preventDefault(); console.log(event.currentTarget); }
检查一下
_onHeaderClick(event) { event.preventDefault(); if(event.target === event.currentTarget) { // handle } }
像这样?
event.target.parentNode