2016-10-18 6 views
0

クローゼットimgの画像srcをクラスで削除し、それをhiddenに設定する必要があります。これは今まで私が試したことです。クラスjqueryでクローゼット画像を削除

<img class="img-preview" src="http://www.abmuku.com/wp-content/uploads/2012/04/google-logo-small.jpg" /> 
<span> random stuff here </span> 
<button class="delete"> Delete 

</button> 


$('.delete').on('click', function(){ 
    $(this).closest('.img-preview').remove(); 
    console.log("ha") 
}); 

http://jsfiddle.net/tQ5vr/38/

+0

$(この).prev( 'IMG-プレビュー')を使用することができ、それを隠すためには、(削除)。 –

+0

投稿私は答えとして –

+0

をマークすることができますイメージを削除するにはイメージの右ですか?あなたはこれをやってみることができます。 –

答えて

3

代わり.closest()

$(this).prev('.img-preview').remove(); 

.closest()

説明の使用.prev():セット内の各要素について、セレクタに一致する最初の要素を取得要素自体をテストし、 をDOMツリー内のその祖先を通してトラバースします。

.prev()

説明:整合要素の組の各要素の直前の兄弟を取得します。セレクタが提供されている場合は、 はそのセレクタに一致する場合にのみ前の兄弟を取得します。 。

SRCを変更し、あなたが

$(this).prev('.img-preview').attr('src','').hide(); 
+0

私はちょうど前に物事を追加する場合はどちらでも動作しませんフィドルを更新しました –

+0

@HollyJohnsonあなたはそれ前にprevUntil()を使用することができます()の代わりにprev()..申し訳ありませんprevAll()not prevUntil()http ://jsfiddle.net/mohamedyousef1980/tQ5vr/40/ –

+0

closest()で動作させるにはどうすればいいですか? –