0

このリストがあるとしましょう:

<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がクリックされたかを見つけることは可能ですか?

4

4 に答える 4

1

はい、使用します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にのみ使用されることに注意してください。forminputselect

デモ

于 2012-10-07T12:00:45.380 に答える
1

this関数に渡して、.parentNodeその親を取得するために使用する必要があります。

function func(element) {
  var parent = element.parentNode;
  // ...
}
于 2012-10-07T12:00:55.537 に答える
1
if(this.parentNode.title === "Fruit") {
 // first one
}
else {
   // the other ul
}
于 2012-10-07T12:02:04.717 に答える
0

obj.parentNodeまたはjQueryを使用するだけです:$(obj).parent()

于 2012-10-07T12:02:14.663 に答える