0
我有一個JavaScript的選擇是這樣的:的getElementsByTagName排除元素(過濾器)
var inputs = document.getElementsByTagName("input");
這工作,只是我想篩選出一些投入(那些與類的「存在」)
大如何在沒有jQuery的情況下做到這一點?
我有一個JavaScript的選擇是這樣的:的getElementsByTagName排除元素(過濾器)
var inputs = document.getElementsByTagName("input");
這工作,只是我想篩選出一些投入(那些與類的「存在」)
大如何在沒有jQuery的情況下做到這一點?
這是你所需要的:
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]);
}
}
遍歷元素,把你想保留在數組中的。如果['querySelectorAll'](https://developer.mozilla.org/en-US/docs/DOM/Document.querySelectorAll)在代碼應該運行的瀏覽器中可用,我寧願使用它。 – 2012-08-04 15:28:07
@ felix-kling我想要這樣的東西:var inputs = document.getElementsByTagName(「input:not('。existent')」);我還需要在舊版瀏覽器上使用此代碼。 – 2012-08-04 15:40:04
是的,這是行不通的。這就是爲什麼我說你必須迭代元素,測試每個元素,如果他們有這個類,如果沒有,保留它(把它放在另一個數組中)。 – 2012-08-04 15:41:56