比方说,我们有这样的名单:如何找到李的父母是谁?
<ul title="Fruit">
<li onClick="func(this)">Apple</li>
<li onClick="func(this)">Banana</li>
</ul>
<ul title="Meat">
<li onClick="func(this)">Chiken</li>
<li onClick="func(this)">Duck</li>
</ul>
是否可以从中找到UL的李被点击?
比方说,我们有这样的名单:如何找到李的父母是谁?
<ul title="Fruit">
<li onClick="func(this)">Apple</li>
<li onClick="func(this)">Banana</li>
</ul>
<ul title="Meat">
<li onClick="func(this)">Chiken</li>
<li onClick="func(this)">Duck</li>
</ul>
是否可以从中找到UL的李被点击?
是,使用parentNode
:
<script type="text/javascript">
function func(el) {
alert(el.parentNode.title);
}
</script>
<ul title="Fruit">
<li onClick="func(this)">Apple</li>
<li onClick="func(this)">Banana</li>
</ul>
<ul title="Meat">
<li onClick="func(this)">Chiken</li>
<li onClick="func(this)">Duck</li>
</ul>
还要注意的是value
仅用于form
元素,如input
和select
。
DEMO。
它的作品谢谢你! – a1204773
@Loclip:当然,不客气! –
您只需将this
传递给该函数,并使用.parentNode
来获取其父项。
function func(element) {
var parent = element.parentNode;
// ...
}
谢谢你的回答! – a1204773
if(this.parentNode.title === "Fruit") {
// first one
}
else {
// the other ul
}
谢谢你的回答! – a1204773
obj.parentNode
或者只是使用jQuery:$(obj).parent()
jQuery中的“just”选项需要更多的字符,所以也许“只是'.parentNode'更适合。 – RobG
是。不是你必须要,但你应该检查jQuery,因为它在这个东西很棒。 – keyser
'this.value'将是未定义的。 – xdazz
@xdazz是你的权利我改变了它哟“这个” – a1204773