i have a DOM element with class='tag'.
i want to check if the class value is tag and alert a message if it's true.
i wrote:
$("#thread").each(function(event) {
if(event.target.class == 'tag') alert('yes');
});
but it didn't work. you can get the id with event.target.id but not the class with this code? what are all the values you can have after event.target?
This will work fine.
Just use inside the condition:
Here you go.
At first, the
event
argument work only for event handlers, and you are using the$.each
method.I don't really think that you want/need to use the
$.each
method, since you are using an#id
selector, and id's should be unique.To check if an element contains an specific class you can use the
hasClass
method:Also if you have a DOM element, to get it's class attribute, you should access it with
className
insteadclass
, that's becauseclass
is a future reserved word in JavaScript, the same thing happens with other attributes likefor
, should be accessed ashtmlFor
...you are using jquery's each method incorrectly. it takes two arguments, neither one of them is an event (that would respond to the target property). from the docs:
See CMS's answer for the proper way of checking if elements have a given class name.