缩小jQuery结果

Sim*_*ens 0 jquery traversal

我已经搜索了如下元素:

var names = $('[name="' + name + '"]');
Run Code Online (Sandbox Code Playgroud)

我如何进一步缩小该结果,例如,搜索特定值?

显而易见的答案是:

var names = $('[name="' + name + '"][value="' + value + '"]');
Run Code Online (Sandbox Code Playgroud)

但我特别想把它分成两步.我查看了find()和has(),但是看起来都在dom而不是dom属性中.

任何帮助将非常感激.

Aln*_*tak 7

.filter改为使用:

var names = $('[name="' + name + '"]').filter('[value="' + value + '"]');
Run Code Online (Sandbox Code Playgroud)

如果您宁愿避免(可能不安全)字符串连接,则可以使用过滤器函数:

$(selector)
.filter(function() {
    return (this.attr('name') === name);
})
.filter(function() {
    return (this.attr('value') === value);
});
Run Code Online (Sandbox Code Playgroud)