Доступ к пользовательским атрибутам через jquery - PullRequest
3 голосов
/ 15 сентября 2011

Мне нужен доступ к пользовательскому атрибуту или данным моей ссылки, но я не могу. Мой код прост, но в повторителе. Я не знаю, вызывает ли это проблему. Вот код:

 <a class="showAllComm" data-userid='<%# DataBinder.Eval(Container.DataItem, "USER_ID")%>' href="#sa">Show all comments</a>

Вот мое событие клика:

$('.showAllComm').click(function(index, element) {
            var commId = $(element).data("userid");
 })

commId не определен, но я вижу в исходном коде, что он имеет значение 1.

как я могу получить доступ к идентификатору пользователя?

Спасибо

Ответы [ 2 ]

8 голосов
/ 15 сентября 2011

Ссылка на элемент с this вместо второго параметра:

var commId = $(this).data("userid");

Аргументы, передаваемые обработчику событий, не являются index и element, как в .each().

По умолчанию вы просто передаете один event аргумент.

DEMO: http://jsfiddle.net/Jjbwd/

$('.showAllComm').click(function( event ) {

    alert( event.type ) // click

    var commId = $(this).data("userid");
});
1 голос
/ 15 сентября 2011

Метод data не является ярлыком для метода attr. Он принимает элемент и атрибут, для документов

Просто используйте attr("data-userid")

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