在这种情况下如何调用输入?

how to call on the input in this scenario?

我想在这种情况下为每个输入提供一个 class,但我不知道该怎么做。

JS:

  document.getElementsByClassName("parent")[0].addEventListener("click",function(){ document.getElementsByClassName("maco")[0].innerHTML="<form><wrap>Name: <input></wrap><wrap>Date Range from <input> to <input></wrap><wrap>Reason:<input></wrap><wrap>Name of Parent:<input></wrap><wrap><button>Enter<button></wrap></form>";
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].classList.add("pl");
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].getElementsByTagName("input")[0].classList.add("first");
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].getElementsByTagName("input")[1].classList.add("second");
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].getElementsByTagName("input")[2].classList.add("third");
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].getElementsByTagName("input")[3].classList.add("fourth");
     document.getElementsByClassName("parent")[0].getElementsByTagName("form")[0].getElementsByTagName("input")[4].classList.add("fifth"); });

我做了上面的但是浏览器一直说未捕获类型错误:无法读取未定义的 属性 'getElementsByTagName'

有没有办法在 innerHTML="..." 的引号中给每个输入一个 class?

由于您没有 post 您的 HTML 结构,因此很难确定这是否有效,但假设您的树是这样的:

<div class="parent">
   <form>
      <input>
      <input>
      <input>
   </form>
</div>

以下是我的操作方法。

const numericalWords = [
  "first",
  "second",
  "third"
]


document.querySelectorAll('.parent form input').forEach((input, i) => {
  input.classList.add(numericalWords[i])
 })
.first {
    background: yellow;
 }
 
 .second {
    background: blue;
 }
 
.third {
    background: green;
 }
<div class="parent">
<form>
  <input>
  <input>
  <input>
</form>
</div>