考虑这段代码:
<div id="div1">
<input type="radio" class="a" />
<input type="radio" class="b"/>
//....
<input type="radio" class="n" />
</div>
<div id="div2">
<input type="radio" class="a" />
<input type="radio" class="b"/>
//....
<input type="radio" class="n" />
</div>
现在我想将委托事件处理程序绑定到那些单选按钮,如下所示:
$("div").on("change","input",myHandler);
function myHandler(e)
{
alert($(this).prop("class"));
alert($(e.currentTarget).prop("class")); // same results...
}
我的问题是:我如何参考 div 或从MyHandler函数获取div Id (它不是通过使用:$(this),$( e.target),或$(e.currentTarget))那么如何引用 div ?
答案 0 :(得分:3)
看看event.delegateTarget
。它引用了您将处理程序附加到的DOM元素。所以抓住它的id
属性:
function myHandler(e) {
alert(e.delegateTarget.id);
}
答案 1 :(得分:1)