Функция .click () не позволяет элементу управления войти в тело функции - PullRequest
1 голос
/ 29 сентября 2019

Мне дали задание (горячее или холодное) с предоставленными файлами HTML / CSS, и я должен написать и реализовать необходимые функции с использованием JQuery, но. есть форма, которая принимает данные от пользователя через <input/>, а затем еще одна <input/>

используется в качестве кнопки для отправки этого ввода от пользователя. Теперь проблема в том, что элемент управления входит в тело функции тогда и только тогда, когда кнопка нажата с пустым полем, в противном случае она просто покидает функцию.

Код содержит всего 4 функции:

  1. Инструкции (в рабочем состоянии)

  2. Скрыть инструкции (в рабочем состоянии)

  3. Начать новую игру (в рабочем состоянии)

  4. угадать (проблематично)

Функция должна выполнять следующие действия:

  1. Создать случайное число изОт 1 до 100.
  2. Принимать входные данные от пользователя как целое число от 1 до 100.
  3. Сравнить пользовательский ввод, если угадан правильно или нет.
  4. Добавитьневерное предположение к <ul> как к отдельному <li> (разделяя эту часть)

    $('.button').click(function(){
        var currentGuess = $("js-user-guess").val();
        if(currentGuess != "" && currentGuess  >= '0' && currentGuess <='100')
        {
            $('.js-guess-list').append('<li>'+currentGuess+'</li>');
        }
    });
    

Ожидаемый результат - если вход подтвержден с помощью 'if', он должен добавляться к <ul>

1 Ответ

0 голосов
/ 29 сентября 2019

Я не знаю, какой результат вы получите, но у вас определенно есть проблема в этой части:

if(currentGuess != "" && currentGuess  >= '0' && currentGuess <='100')

Ваше условное сравнение сравнивает предположение со строками '0' и '100'. Javascript, вероятно, попытается сравнить их в алфавитном порядке или что-то. Вы должны сравнивать их с числами 0 и 100.

Также currentGuess может быть строкой, поэтому вам может понадобиться parseInt().

Попробуйте изменить эту строку, чтобы сказать:

if(currentGuess != "" && parseInt(currentGuess,10)  >= 0 && parseInt(currentGuess,10) <= 100);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...