input textをクリックしたら親要素をbとしてそこを拾いたいです
b1の子要素であるtextをクリックしたらalertでb1のidを出したい
b2の子要素であるtextをクリックしたらalertでb2のidを出したい
親要素の指定はbタグで行いたいです
詳しい方教えていただけないでしょうか
parentElementを使った手法は考えていません(parentElement.parentElementのような書き方)
<b id="b1"> <s> <i> <input type="text"> </s> </i> </b> <div> <b id="b2"> <i> <s> <input type="text"> </i> </s> </b> </div> <script> window.onload=function(){ window.onclick=function(e){ alert(e.target.id); } } </script>
> parentElementを使った手法は考えていません
なぜでしょうか? その理由がわからないと、回答もその理由に引っかかる可能性があります。
<s>
<i>
<input type="text">
</s>
</i>
のタグ付はおかしいですね
色々な要素が絡み合う中、決まった順列ではない中で親要素を拾いたかったのでこのような形にしました
>なぜでしょうか? その理由がわからないと、回答もその理由に引っかかる可能性があります。
parentElementだとElementの数が不定だったりした場合に拾えないのではと思った次第です
Element.closest()で無事解決しました
> 決まった順列ではない中で親要素を拾いたかった
上記の場合
<s><i><input></i></s><i></i>
のような感じで解釈されるようです
とにかくきっちりとtagはつけるべきです

回答1件
あなたの回答
tips
プレビュー