2016-07-30 12 views
0

を返信します。しかし、 "replies_hide"をクリックすると、すぐにすべての返信が閉じられます。私が今開いた返信だけを隠すには?jQueryの隠しこれだけは、私はここに、このjQueryのコードを持って

HTML:あなたが回答クラスのすべての要素を隠しているので、これが起こっている

 <ul class="list-unstyled replies"> 
     <a class="replies_hide" href="#">Hide replies</a> 
     @foreach($com->reply as $reply) 
     <li style="margin-left: 5%"> 
     <img src="http://flipbit.co.uk/content/images/blog/build-avatar.jpg" style="height: 30px"> 
     <strong>{{$reply->user->name}}</strong> 
     {!! strtr(strip_tags($reply->reply), $emotes) !!}<br> 
     <small>{{$reply->created_at}}</small> 
     @if(Auth::user()->id == $reply->user_id) 
     <a href="/trinti-atsakyma/{{$reply->id}}">Trinti</a> 
     @endif 
     </li> 
     @endforeach  
     </ul> 
+0

問題は、「返信を隠す」というボタンを隠しているだけで、返信は返さないということです。 –

+2

htmlマークアップを追加できますか? – guradio

+1

HTMLを投稿してもよろしいですか? – Ibanez

答えて

0

を、あなたがボタンに最も近いulブロックを見つける必要がありますので、あなただけクリックhideボタンを含むulブロックとその返信を非表示にしたいようですあなたはクリックした。

それを行うには、使用することができます。

$(this).closest(".replies").hide(300); 

は、それ自体が要素をテストし、DOMツリーにその祖先を通って上方に横断することにより、セレクタに一致する最初の要素を取得します。

0

。あなたはあなたがいるhtml要素だけを隠さなければなりません。このお試しください:あなたのHTMLマークアップで

$(this).hide(); 
関連する問題