jquery: как получить значение атрибута id? - PullRequest
41 голосов
/ 24 октября 2009

Основной вопрос JQuery. У меня есть элемент option, как показано ниже.

<option class='select_continent' value='7'>Antarctica</option>  

JQuery

$(".select_continent").click(function () {
  alert(this.attr('value'));
});

Это выдает ошибку, говоря, что this.attr не является функцией, поэтому я не правильно использую "this".

Как я могу заставить его предупредить 7?

Ответы [ 4 ]

67 голосов
/ 24 октября 2009

Вам нужно сделать:

alert($(this).attr('value'));
48 голосов
/ 09 июля 2013

Чтобы соответствовать названию этого вопроса, значение атрибута id:

var myId = $(this).attr('id');
alert( myId );

НО, конечно, элемент должен уже иметь определенный элемент id, как:

<option id="opt7" class='select_continent' value='7'>Antarctica</option>

В сообщении OP это было не так.


ВАЖНО:

Обратите внимание, что plain js быстрее (в данном случае):

var myId = this.id
alert(  myId  );

То есть, если вы просто сохраняете возвращенный текст в переменную, как в примере выше. Здесь нет необходимости в чудесности jQuery.

4 голосов
/ 19 мая 2015

Вы также можете попробовать этот способ

<option id="opt7" class='select_continent' data-value='7'>Antarctica</option>

JQuery

$('.select_continent').click(function () {
alert($(this).data('value'));
});

Удачи !!!!

2 голосов
/ 22 мая 2014
$('.select_continent').click(function () {
    alert($(this).attr('value'));
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...