JS - 使用className ==“A”禁用所有输入

时间:2016-12-22 16:46:33

标签: javascript

在网站上我想用className ==“A”禁用(锁定)所有输入。输入有多个classNames,例如"A B C"

这是HTML

<input type="text" class="A B C" value="anything"/>

这是我的JavaScript:

var el = document.getElementsByTagName("INPUT") 

for (var i = 0; i < el.length; i++) {
      if (el[i].className == 'A')   
          el[i].disabled = true
}

但这不起作用,因为el.className总是"A B C"。我知道我可以使用字符串方法来查找A

是否有更聪明,更快捷的方式?

信息:
我需要使用document.getElementsByTagName("INPUT")并使用纯JavaScript!

2 个答案:

答案 0 :(得分:4)

您可以使用接受CSS选择器的document.querySelectorAll方法:

document.querySelectorAll('input.A');

答案 1 :(得分:0)

从@ undefined的答案扩展,您可以使用querySelectorAll()class寻找范围input的特定const inputs = document.querySelectorAll('input.A'); inputs.forEach(input => input.disabled = true);

完整代码es6:

var inputs = document.querySelectorAll('input.A');

for (var i = 0; i < inputs.length; i++) {
  inputs[i].disabled = true;
}

完整代码es5:

end()