2012-01-28 31 views
0

ここで十分に説明できるかどうかを確認してください。あなたは、「削除」や「お気に入り」divの内側に「info_right」を参照してくださいます注意する場合は 私のHTMLはjquery select親要素兄弟

<li> 
    <div class="info_left" rel="snack">Fries</div> 
    <div class="info_right"> 
     <span class="info_remove">[Remove]</span> 
     <span class="info_favorite">[Favorite]</span> 
    </div> 
</li> 
<li> 
    <div class="info_left" rel="lunch">Burger</div> 
    <div class="info_right"> 
     <span class="info_remove">[Remove]</span> 
     <span class="info_favorite">[Favorite]</span> 
    </div> 
</li> 
<li> 
    <div class="info_left" rel="4thmeal">Taco</div> 
    <div class="info_right"> 
     <span class="info_remove">[Remove]</span> 
     <span class="info_favorite">[Favorite]</span> 
    </div> 
</li> 

のように見えます。これらの2つのオプションのどちらかをクリックすると、同じliの "info_left" divのrelとtextの値が得られます。私はいくつかの方法を試しましたが、私は親、兄弟の間のコンボを正しく釘付けにしているとは思っていません。いずれにせよ、誰かが私に骨を投げることを望んでいる。

+0

*あなたは試してみましたか? – Tomalak

+1

あなたが試したことがあれば、あなたがしたことを示してください。私たちはあなたを導くことができます。 –

答えて

1

それはちょうど次のようになります。

$('.info_remove,.info_favorite').on('click', function() { 
    var $left = $(this).parent().siblings('.info_left'); 
    var rel = $left.attr('rel'); 
    var txt = $left.text(); 
    ... 
}); 
0

jsFiddle example

$(document).ready(function(){ 
    $(".info_right span").click(function(){ 
     $("#msg").html($(this).attr("class")+": "+$(this).parent().prev().attr("rel")); 
    }) 
}) 
0

この

$('.info_remove,.info_favorite').click(function() { 
    var target_elem = $(this).parent().prev(); 
    alert(target_elem.attr('rel')); 
    alert(target_elem.text()); 
}); 

フィドルしてみてください:方法を* http://jsfiddle.net/ss37P/1/