document.getElementsByName(“ q1”)。disabled = true无法正常工作

时间:2019-02-26 21:05:55

标签: javascript

我正在尝试禁用名称为"q1"的输入,但是它并没有禁用它们。

代码行仅仅是

if (time < 0){
    document.getElementById("lose").innerHTML = "O tempo acabou!";
    document.getElementById("nextQuestion").style.display = "block"
    document.getElementsByName("q1").disabled = true
}

其他document.getElementById工作。

html是

<br><br><input type="submit" name="q1" value="arroz">
            <input type="submit" name="q1" value="massa"><br><br>
            <input type="submit" name="q1" value="Apanhado em flagrante">
            <input type="submit" name="q1" value="batata de tremoços"><br><br><br>`

1 个答案:

答案 0 :(得分:2)

document.getElementsByName返回一个NodeList,有点像一个数组。您需要遍历它并禁用每个元素。

NodeList将包含所有名称为q1的元素,并且下面的代码(特别是.forEach()循环)将禁用每个名称为{{1}的元素}

q1
time = -1;

if (time < 0){
    document.getElementById("lose").innerHTML = "O tempo acabou!";
    document.getElementById("nextQuestion").style.display = "block"
    document.getElementsByName("q1").forEach(e => {
      e.disabled = true;
    });
}