JQuery, получить идентификатор каждого элемента в классе с использованием .each?
Я пытаюсь получить id
каждого элемента в class
, но вместо этого он предупреждает каждое имя класса отдельно, поэтому для class="test"
он предупреждает: t
, e
, s
, t
... Приветствуется любой совет о том, как получить каждый элемент id
, который является частью class
, поскольку я не могу понять этого. Спасибо.
$.each('test', function() {
alert(this)
});
Ответы
Ответ 1
Попробуйте это, заменив .myClassName
на фактическое имя класса (но сохраните период в начале).
$('.myClassName').each(function() {
alert( this.id );
});
Итак, если класс "test", вы бы сделали $('.test').each(func...
.
Это конкретный вид .each()
, который выполняет итерацию над объектом jQuery.
Форма, которую вы использовали, итерации по любому типу коллекции. Таким образом, вы по существу повторяли массив символов t,e,s,t
.
Используя эту форму $.each()
, вам нужно сделать это следующим образом:
$.each($('.myClassName'), function() {
alert( this.id );
});
... который будет иметь тот же результат, что и пример выше.
Ответ 2
Ответ на patrick dw - это правильно.
Для пинков и хихиканья я думал, что отправлю простой способ вернуть массив из всех идентификаторов.
var arrayOfIds = $.map($(".myClassName"), function(n, i){
return n.id;
});
alert(arrayOfIds);