Подтвердить что ты не робот

Прекратить выполнение JavaScript script

У меня есть форма, которая представляется ajax. Перед отправкой есть функция, которая проверяет, пусто ли текстовое поле в форме перед отправкой. если он пуст, мне нужно остановить script и показать окно модальности И предотвратить отправку данных.

Как остановить выполнение? Использовать ли я

break;

?

4b9b3361

Ответ 1

Нет, вы обычно используете return;

Конечно, точная информация будет зависеть от вашей реализации. Например, вам может понадобиться return false; и вручную проверить возвращаемое значение, чтобы увидеть, следует ли продолжать выполнение script в вызывающей функции.

Ответ 2

Попробуйте следующее:

$('#target').submit(function() {
  alert('Handler for .submit() called.');
  return false;
});

Ответ 3

Вы можете использовать break;, но если вы это сделаете, вы не сможете проверить возвращаемые значения (используйте для этого return; или return $bool;).

Я думаю, что такая конструкция:

.submit(function ()
{
    if (verifyInput())
    {
    // continue
    }
    else
    {
    // show user there is something wrong
    }
});

verifyInput() в этом случае возвращал бы логическое, конечно, представление о том, что форма была заполнена должным образом.

Ответ 4

При возврате работает достаточно хорошо, чтобы предотвратить действие отправки по умолчанию, я бы предложил вызвать event.preventDefault(). Просто назовите это первым делом, чтобы предотвратить обработку пользователем по умолчанию этого типа событий. Это, возможно, более современный способ сделать это.

Это, конечно, предполагает, что у вас есть ссылка на событие, которое станет первым аргументом для вашей функции обработчика или вашего метода handleEvent объекта EventListener, пока вы предоставляете ему параметр.

Это просто еще один инструмент для вашего инструментария, он также хорошо сочетается с event.stopPropagation, когда вы не хотите останавливать значение по умолчанию, а просто хотите остановить распределение событий.