If I have a selector like
$.('.active');
How can I see how many items that matched?
Alternatively, is there an easy way to see if more than zero elements were matched?
If I have a selector like
$.('.active');
How can I see how many items that matched?
Alternatively, is there an easy way to see if more than zero elements were matched?
call .length
on the returned set.
Do not use .size
because:
The .size() method is deprecated as of jQuery 1.8
How many:
var count = $('.active').length;
Check if it matched something:
if ($('.active').length) // since 0 == false
You can use the native javascript length
property:
alert( $(".active").length );
You can even use the .length
return value directly within a conditional statement:
if( $(".active").length ) {
alert("Found some");
} else {
alert("Found nothing");
}
In this example, if 0 results are found the else statement will be executed.
Example: http://jsbin.com/upabu/edit
you should use $('.class').length
because it is faster, but alternatively you can call $('.class').size()
and get the same result.
To check the elements, do something like the following:
var len = $('.class').length;
if (len)
// do something
else
// do something else
Caching the length in a local var is an optimization that will speed up your JS if you have to make another call to that length property.