jQuery closest()、next()、nextAll()を調べましたが、祖先/兄弟/子供をターゲットにしていないため、スパン内にあるリンクをクリックした後、最も近い隠しdivを選択する方法を理解できませんでした。このコードで動作しますが、ひどいにおいがします。これを書く正しい方法は何ですか?私のコメントの追加リンクの下に隠されている "post_comments"クラスを選ぶにはどうすればいいですか?ここでjQueryクラスセレクタでクローズド隠しdivを明らかにする方法
私のコードです:
<div class="skittles">
<span>
<a href="#" class="comment_count">Add Comment</a>
</span>
<span>3 days ago</span>
</div>
<div class="post_comments hidden">
<input class="comment_input" type="text" placeholder="enter your comment" data-type="post" />
</div>
jQueryの
$(function(){
$(".comment_count").click(function(e){
var $test = $(this).parent().parent().next();
$test.show();
e.preventDefault();
});
});
作業のjfiddle醜いコード http://jsfiddle.net/N5a2v/9/
申し訳ありません。このソリューションが私のアプリにとってうまくいかない理由は、同じ ".post_comments"クラスを持つ他の多くのフィールドがあるためです。私は最も近いものだけを明らかにする必要があります。 – yoshyosh
これはidの概念がIDを与えてID名から選択する場合です...または、同じクラスの隠れ要素だけを選択したい場合は:hidden " –