jQuery Filter Objects by Data Attribute Value
Share
How you might use jQuery to filter elements by their data Attribute values. This code snippet grabs all divs that have an id beginning with “proto_” and have a data attribute of “state” with value “open”.
var $el = $('div[id^=proto_]').filter(function()
{
return ($(this).data("state") == "open")
});
console.log($el);
I’ve done a quick demo in jsfiddle to demonstrate. https://jsfiddle.net/qgwnY/
Optimised Version
Thanks Vlad.
var $el = $('div[id^=proto_]').filter('div[data-state=open]').css('color','red');
Check this out on jsfiddle.