у меня есть элемент DOM с классом ='tag'.
я хочу проверить, является ли значение класса тегом, и предупредите сообщение, если это верно.
я записал:
$("#thread").each(function(event) {
if(event.target.class == 'tag') alert('yes');
});
но это не работало. можно ли получить идентификатор с event.target.id, но не классом с этим кодом? каковы все значения, которые Вы можете иметь после event.target?
Сначала аргумент событие
работает только для обработчиков событий, а вы используете метод $.каждый
.
Я не думаю, что Вы хотите/должны использовать $.каждый
метод, так как Вы используете #id
селектор, а id'ы должны быть уникальными.
Для проверки, содержит ли элемент определенный класс, можно использовать метод hasClass
:
if ($("#thread").hasClass('tag')) {
//...
}
Также если у вас есть элемент DOM, то для получения его атрибута класса, вы должны получить доступ к нему с помощью className
вместо class
, это потому что class
является будущим зарезервированным словом в JavaScript, то же самое происходит с другими атрибутами типа для
, должно быть доступно как htmlFor
. ..
вы используете каждый метод jquery неправильно. для этого требуется два аргумента, ни один из них не является событием (которое бы отвечало целевому свойству). из docs:
$.each([52, 97], function(index, value) {
alert(index + ': ' + value);
});
смотрите ответ CMS о правильном способе проверки того, имеют ли элементы заданное имя класса.
Здесь вы идете.
$("div").each(function (index, domEle) {
if (domEle.hasClass("tag")) {
console.log('yes');
} else {
console.log('no');
}
});