@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--;
    }
};
  • Вопрос задан
  • 717 просмотров
Решения вопроса 1
@nvdfxx
Senior Pomidor developer
submitButton.addEventListener('click', e => {
    e.target.disabled = true
    setTimeout(() => e.target.disabled = false, 500)
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы