Как остановить распространение следующей встроенной функции - PullRequest
0 голосов
/ 18 октября 2019

У меня есть этот необходимый HTML-код:

//html code
<a href="javascript:void(0);" title="Save" onclick="validate(event, document.thisForm); return submitForm(document.thisForm);"></a>
<form name="thisForm">
    //some stuff without submit button and required inputs
</form

Мой JS выглядит следующим образом:

function validate(event, form)
{
    var error = '';

    var $inputs = jQuery(form).find(':input[required]');

    $inputs.each( function() {
        if(jQuery(this).val().length === 0) {
            error += 'missing value';
            return;
        }
    });

    if (error !== '') {
        event.preventDefault();
        event.stopPropagation();
        event.stopImmediatePropagation();

        window.alert(error);
        return false;
    }

    return true;
}

Проблема в том, что невозможно остановить вызов функции submitForm, когда что-то не так при проверке.

1 Ответ

1 голос
/ 18 октября 2019

Измените ваш onclick обработчик событий на:

return validate(event, document.thisForm) && submitForm(document.thisForm);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...