Mik*_*ike 3 javascript parent-child javascript-events
我有一个看起来像下面的结构,我正在尝试获取id foo.如果我们从中冒泡,它是唯一 DIV的id onclick func(),这意味着不会有其他内部包含id的DIVfoo.但是,里面可能有其他标签foo包含id(例如bye, hello).
没有使用框架.
<div id="bar"></div>
<div id="foo">
<p><p>
<div class="bye">
<input id="bye" type="text" value="test" />
<input id="hello" type="text" value="test" />
<table>
<tr><td onclick="func(event)">1</td></tr>
<tr><td onclick="func(event)">2</td></tr>
</table>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
function findIdOfParent(obj) {
var o = obj;
while(!o.id) {
o = o.parentNode;
}
alert(o.id); // 'foo'
}
Run Code Online (Sandbox Code Playgroud)
该函数findIdOfParent采用DOM节点.您可以使用它来调用它onclick="findIdOfParent(this);",但是如果您只想传递event,就像在您的示例中一样,您必须从中提取DOM节点event.target或者您正在执行的任何操作.