Как выбрать второй элемент с JQUERY при нажатии на изображение? - PullRequest
2 голосов
/ 24 мая 2009

Код ниже работает только для первого div. Я не могу отобразить другие div, когда я нажал на другие "img" Вы знаете способ достижения второго (следующего) элемента?

$(document).ready(function() {

        $('.imgOpenClose').click(function() {
            if ($(this).attr("src") == "images/openTree.gif") {
                $(this).attr("src", "images/closeTree.gif");
                $(this).parent().find('div').eq(0).show();
            }
            else {
                $(this).attr("src", "images/openTree.gif");
                $(this).parent().find('div').eq(0).hide();
            }
        });
});

Wanna open table when i clicked on plus images

And wanna see the table inside this div

Ответы [ 2 ]

2 голосов
/ 24 мая 2009

Поскольку у вас есть элемент разрыва, следующий за изображением, вам нужно будет использовать nextAll и выбрать первый DIV вместо простого использования next с фильтром, как в моем исходном ответе.

$('.imgOpenClose').click( function() {
    $(this).nextAll('div:first').toggle();
});
1 голос
/ 24 мая 2009

Если у вас есть несколько изображений с одним и тем же тегом класса, вы можете сделать это без добавления уникального идентификатора:

$(function() {
    $('.imgOpenClose').click(function() {
        $(this).next('div').children('table').toggle();
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...