Переопределение protectDefault() в шаблоне модуля JavaScript

Я использую шаблон Singleton для создания сценария обработки формы...

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

//public methods
    handleSubmit: function (e) {

        //prevent the default submission process
        e.preventDefault();

},

warnDafault делает то, что должен, а именно перехватывает форму, чтобы остановить обработку на стороне сервера.

Затем я создал правила проверки... и если все правила проверки пройдены, он завершается этим методом:

validData: function (error) {
        if (error.length === 0) {
            return true;
        } else {
            // If there are errors in the form then run alert message
            alert(error);
        }

    },

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

Однако возвращаемое значение true здесь не работает... и я не знаю почему, но я уверен, что для этого есть очень простая причина

1 ответ

Вы можете пропустить функцию protectDefault и просто сделать что-то подобное?

var hasErrors = false;
    if(myLogicHasErrors){
        hasErrors = true;
    }
    if(hasErrors) return false;

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

Другие вопросы по тегам