JavaScript поле ввода должно совпадать с номером, скрытым в JavaScript коде - PullRequest
0 голосов
/ 02 февраля 2020

Я получаю спам от ботов, как сумасшедший в моей форме связи с нами. Я пробовал, случайный код безопасности, код должен соответствовать коду, который вы видите. Они обошли это. Я вернулся к Google recaptcha, они обошли его. Поэтому единственной моей мыслью было создание поля ввода, в котором они должны были бы ответить на вопрос, а число было бы скрыто в скрипте JS. Если номер правильный, они смогут отправить форму, если нет, то не смогут. Проблема в том, что JS не моя сильная сторона. Может кто-нибудь, пожалуйста, помогите мне создать способ проверки JS, чтобы увидеть, равно ли поле ввода 10? Заранее спасибо.

<script language='javascript' type='text/javascript'>
    function check(input) {
        if (squest !== 10) {
            input.setCustomValidity('Answer is incorrect.');
        } else {
            // input is valid -- reset the error message
            input.setCustomValidity('');
        }
    }
</script>
<input name="squest" required="required" type="text" id="squest" oninput="check(this)" />

<input type="submit" value="Submit" class="viewbtn" id="btn" name="submit">

1 Ответ

1 голос
/ 02 февраля 2020

squest относится к элементу с самим id="squest", из этого следует взять value.

Неидентичность / строгое неравенство (! ==)

Оператор non-identity возвращает true , если операнды не равны и / или не имеют одинаковый тип.

Поскольку вы используете оператор неидентичность / строгое неравенство (! ==) , вы должны преобразовать значение в число.

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

if (Number(input.value) !== 10) {

<script language='javascript' type='text/javascript'>
  function check(input) {
    if (Number(input.value) !== 10) {
      input.setCustomValidity('Answer is incorrect.');
    } else {
      // input is valid -- reset the error message
      input.setCustomValidity('');
    }
  }
</script>

<form>
  <input name="squest" required="required" type="text" id="squest" oninput="check(this)" />
  <input type="submit" value="Submit" class="viewbtn" id="btn" name="submit">
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...