getElementsByTagName排除元素(过滤器)

时间:2012-08-04 15:26:39

标签: javascript

我有一个像这样的JavaScript选择器:

var inputs = document.getElementsByTagName("input");

这很好用,除了我想过滤掉一些输入(具有“存在”类的输入)

如果没有jQuery,我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

这就是你需要的:

var inputs = document.getElementsByTagName("input");
var neededElements = [];
for (var i = 0, length = inputs.length; i < length; i++) {
    if (input[i].className.indexOf('exists') >= 0) {
        neededElements.push(input[i]);
    }
}

或者,简而言之(由下面knee-cola提供):

let neededElements = [].filter.call(document.getElementsByTagName('input'), el => el.className.indexOf('exists') >= 0);