jQuery:选择属性大于值的所有元素

时间:2010-04-10 14:11:39

标签: jquery css-selectors inequalities

我知道要使用名为attrName的atttribute过滤元素,其值为attrValue,我这样做:

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

但是查看文档http://api.jquery.com/category/selectors/我看不到选择所有元素的选项。 attrName> attrValue

这会有效吗

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

4 个答案:

答案 0 :(得分:97)

您可以使用.filter()的函数重载执行此操作,如下所示:

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

答案 1 :(得分:25)

解决方案是jQuery.filter()

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

答案 2 :(得分:16)

请注意,如果您正在使用整数,请确保使用parseInt()

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

答案 3 :(得分:0)

对于 ES6 箭头函数

$("selector").filter((index, el) => {
    return parseInt($(el).attr("attrName")) > 123;
});