0

我在一个表单中有 6 个输入,每个输入分别有一个 .first .second .third .fourth .fifth .sixth 类,我想用 vanilla JS 选择它们,但是在尝试使用 getElementsByClassName 和 querySelectorAll 之后,它仍然没有锻炼。

这是我的代码行:

document.querySelectorAll("form input")[0].value==""

如何选择这些类的所有元素?

提前感谢您提供的任何帮助!

4

2 回答 2

1

您只需按标签名称选择:

const elements = document.getElementsByTagName("input")

https://developer.mozilla.org/en-US/docs/Web/API/Element/getElementsByTagName

于 2020-04-12T12:27:45.943 回答
0

您当前的代码document.querySelectorAll("form input")基本上得到了您想要的。但是,您随后执行[0].value==""的操作基本上是获取第一个输入并检查其值是否为空。您可以将该类sand应用于所有输入,执行以下操作:

function check() {
  var listo = document.getElementsByTagName("input");
  for (var i = 0; i < listo.length; i++) {
    listo[i].classList.add("sand");
  }

  for (let input of listo) {
    input.setAttribute("required", "");
    input.required = true;
  }

  console.log(listo[0]);
}

sandify.onclick = check;
input {
  margin: 5px 0;
}

input.sand {
  border: 1px solid sandybrown;
}
<form>
  <input type="text" /><br/>
  <input type="text" /><br/>
  <input type="text" /><br/>
  <input type="text" /><br/>
  <input type="text" /><br/>
</form>
<button id="sandify">sandify</button>

于 2020-04-12T12:35:34.117 回答