このリストがあるとしましょう:
<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からliがクリックされたかを見つけることは可能ですか?
このリストがあるとしましょう:
<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からliがクリックされたかを見つけることは可能ですか?
はい、使用します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
デモ。
this
関数に渡して、.parentNode
その親を取得するために使用する必要があります。
function func(element) {
var parent = element.parentNode;
// ...
}
if(this.parentNode.title === "Fruit") {
// first one
}
else {
// the other ul
}
obj.parentNode
またはjQueryを使用するだけです:$(obj).parent()