Простой вопрос - я не совсем понимаю, почему моя переменная счетчика не обновляется, когда я нажимаю кнопку отправки (тип ввода submit), основываясь на нажатии с помощью eventlistener. Остальная часть кода в порядке, я просто хочу знать, почему мой "counter++" не добавляет 1 к значению счетчика, когда я нажимаю на кнопку.

let counter = 0;
submitButton.addEventListener('click', function() {
    counter++;
    -----FEEL FREE TO IGNORE THE CODE BELOW THIS----
    let captureInput = document.getElementById('primaryGuess');
    storeGuess(captureInput.value);
    const newLi = document.createElement("LI");
    const LiContent = document.createTextNode(captureInput.value);
    newLi.appendChild(LiContent);
    listOfPriorGuesses.appendChild(newLi);
    arrayOfGuesses.forEach((currNum) => {
        if (parseInt(currNum) === randomNumber) {
            gameTitle.innerText = "YOU WIN!!!"
            gameTitle.style.color = "green"
            captureInput.value = "Click Play Again!"
        } else if(parseInt(currNum) < randomNumber) {
            captureInput.value = "Guess Higher!"
        } else if(parseInt(currNum) > randomNumber) {
            captureInput.value = "Guess Lower!"
        }
    })
})

Bixar

Ответов: 1

Ответы (1)

Это должно работать. Пожалуйста, посмотрите минимальный код ниже. Если вы используете input type='button' внутри формы, вам необходимо использовать e.preventDefault(), иначе форма будет отправлена. Возможно, у вас именно такой сценарий. Вы также можете использовать type='button' в этом случае вам не понадобится e.preventDefault();

let counter = 0;
let submitButton = document.getElementById('submitButton');

let inputSubmitButton = document.getElementById('inputSubmit');

submitButton.addEventListener('click', function() {
  counter++;
  console.log(counter);
});


inputSubmitButton.addEventListener('click', function(e) {
  e.preventDefault();
  counter++;
  console.log(counter);
});



<форма>
  

2022 WebDevInsider