Я пытаюсь отключить входы с именем "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>`
document.getElementsByName("q1") возвращает список элементов с именем q1, поэтому вы должны зациклить и отключить
У вас есть много входных данных с именем «q1», поэтому вам, вероятно, следует сделать их уникальными. Или получить правильный индекс
О, я не знал, что он вернул список, я ожидал, что он просто отключит их все. Спасибо!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


document.getElementsByName возвращает Список узлов, что-то вроде массива. Вам нужно перебрать его и отключить каждый элемент.
Список узлов будет содержать все элементы с именем q1, а приведенный ниже код (в частности, цикл .forEach()) отключит каждый элемент с именем 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;
});
}<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>
<div id = "lose"></div>
<div id = "nextQuestion"></div>Буква e в цикле foreach — это каждый элемент q1, верно?
@DuarteArribas да. В циклах foreach мы обычно используем element, чтобы обозначить, что это элемент. Я начал использовать e, который легче набирать, но означает то же самое.
getElementsByNameвозвращает коллекцию. Возможно, вы имели в видуdocument.getElementsByName("q1")[0].disabled?