JQuery: какой элемент был нажат? - PullRequest
1 голос
/ 24 марта 2010

У меня есть список со ссылками.Эти ссылки являются ссылками на таблицы на одной странице.Что я хочу сделать, так это то, что по любой ссылке, которую я нажимаю в списке, будет показана соответствующая таблица, а все остальные будут скрыты.

Без добавления разных идентификаторов / классов для каждой ссылки в списке и соответствующей таблице, есть ли способ узнать, по какому элементу был выполнен щелчок, и показать () его таблицу?

Из какихЯ понимаю, JQuery возвращает объект массива на его селектор.Как я могу узнать, по какому элементу массива щелкнули?

Я пытался использовать event.which, но я немного растерялся.

Помощь с благодарностью!

Ответы [ 2 ]

2 голосов
/ 24 марта 2010

CSS:

<style type="text/css">
    table {display:none;}
</style>

Сценарий:

$(document).ready(function() {

        $.each($('a'), function(i) {

            var link = $(this);

            link.click(function() {

                $('table').hide().eq(i).fadeIn();
            });

        });
    });

HTML:

<ul>
    <li><a href="#">first</a></li>
    <li><a href="#">second</a></li>
    <li><a href="#">third</a></li>
</ul>

<table>
    <tr>
        <td>first</td>
    </tr>
</table>
<table>
    <tr>
        <td>second</td>
    </tr>
</table>
<table>
    <tr>
        <td>third</td>
    </tr>
</table>
1 голос
/ 25 марта 2010

$ ('a'). Click прикрепляет отдельное событие к элементу, однако каждый (эквивалент foreach в c #) проходит через все соответствующие элементы селектора

каждая функция имеет встроенную функцию, которая добавляет переменную "i" в качестве индекса к этим элементам.

Вы можете легко воссоздать его, используя for (i = 0; i

и, наконец, я установил, что все таблицы должны быть скрыты в css, и использовал функцию скрытия в начале цепочки, потому что если я не делаю, например, таблица 1 в результате нажатия становится display: block и затем Я нажимаю вторую ссылку, после чего становится видимой вторая таблица, а также первая, которая не была скрыта.

таким образом, скрытие гарантирует, что каждая таблица скрыта, и единственная таблица, соответствующая индексу i, будет показана позже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...