2010-04-10 6 views
54

Je sais que pour filtrer un élément avec un atttribute appelé attrName qui a une valeur attrValue que je fais:jQuery: Sélection de tous les éléments où l'attribut est supérieure à une valeur

filter("[attrName='attrValue']") 

mais en regardant la documentation http://api.jquery.com/category/selectors/ je peux » t voir une option pour sélectionner tous les éléments st attrName> attrValue

Est-ce que ce travail

filter("[attrName>'attrValue']") 
+0

Si vous recherchez des éléments avec des attributs supérieurs à zéro, vous pouvez utiliser '[attribute! = 0]' –

Répondre

85

Vous pouvez le faire en utilisant la surcharge de fonction de .filter(), comme ceci:

.filter(function() { 
    return $(this).attr("attrName") > "someValue"; 
}) 
22

La solution est jQuery.filter():

$("selector").filter(function() { 
    return $(this).attr("my-attr") > 123; 
}); 
7

Attention, si vous jouez avec des nombres entiers, assurez-vous en utilisant parseInt().

$("selector").filter(function() { 
    return parseInt($(this).attr("my-attr")) > 123; 
}); 
Questions connexes