Задать вопрос
@atumbochka

Как запретить нажимать кнопку несколько раз?

Есть кнопка, при нажатии на неё срабатывает таймер. Нужно сделать так, чтобы кнопка не действовала, пока таймер идёт, но при этом после окончания времени пользователь мог снова нажать её.
Код:
<div class="pdTop">
            <input type="button" id="submitButton" value="ОК">
</div>
<h2 id="countDown"></h2>


И js
submitButton.onclick = function () {
    userInformation = {
        "name": name.value,
        birth: dayOfBirth.value + " " + monthOfBirth.value + " " + yearOfBirth.value,
        "symptoms": "Симптомы: " + symptoms.value
    };
    
    if (symptoms.value === "Экстримальные") {
        var symptomTime = 100;
    }
    else if (symptoms.value === "Сложные") {
        var symptomTime = 60;
    }
    else if (symptoms.value === "Средние") {
        var symptomTime = 30;
    } else {
        var symptomTime = 15;
    }

    let startingMinutes = symptomTime;

    let time = startingMinutes * 60;

    let countDown = document.getElementById("countDown");

    setInterval (updateCountDown, 1000);

    function updateCountDown () {
        let minutes = Math.floor(time / 60);
        let seconds = time % 60;

        seconds = seconds < 10 ? "0" + seconds : seconds;

        countDown.innerHTML = `${minutes}:${seconds}`;
        time--;
    }
};
  • Вопрос задан
  • 952 просмотра
Подписаться 2 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
@nvdfxx
Senior Pomidor developer
submitButton.addEventListener('click', e => {
    e.target.disabled = true
    setTimeout(() => e.target.disabled = false, 500)
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы