Die 20
Die 20

Reputation: 261

jQuery selecting numerous divs with the same class outside of the currently clicked div

I have a div that contains a dynamic number of specific children that I need to change from hide to show. Its really hard to explain but the code gives a clear picture.

<div class="item_content_container">
    <div class="content_container">
        <div class="item">ITEM A</div>
        <div class="item">ITEM B</div>
        <div class="item">ITEM C</div>
    </div>
    <div class="content_container">
        <div class="item">ITEM A</div>
        <div class="item">ITEM B</div>
        <div class="item">ITEM C</div>
    </div>
</div>
<div class="item_options_container">
    <div class="item_click">CLICK</div>
</div>

The code can continue to repeat itself so I only want to select the "item" classes before the "item_click" div.

here is the jQuery:

$(".item_click").live('click', function () {
    $(this).parent().siblings(".item_content_container").find(".item").show();
});

Upvotes: 2

Views: 147

Answers (1)

Roko C. Buljan
Roko C. Buljan

Reputation: 205987

LIVE DEMO

$(".item_options_container").on('click', '.item_click', function () {
    $(this).closest('.item_options_container')
           .prev('.item_content_container')
           .find('.item')
           .show();      
}); 

http://api.jquery.com/on/ (.live() method is deprecated)
http://api.jquery.com/closest/ (or also .parent() in your case)
http://api.jquery.com/prev/
http://api.jquery.com/find/

Upvotes: 3

Related Questions