Foundation 6 Abide - Как реализовать формуновалидат - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть форма, которая использует Abide.Форма имеет две кнопки, обе являются type = "submit", но у одной из них установлен атрибут formnovalidate.Эта кнопка предназначена для «предыдущего шага», поскольку она берет все, что пользователь заполнил, и отправляет форму, перенося пользователя на предыдущий шаг формы.

Проблема заключается в том, что постоянная проверка по-прежнему включается, когда пользователь нажимает кнопку отмены, не позволяя пользователю вернуться назад, пока он не заполнит все поля на текущем шаге.Проверка HTML5 имеет атрибут formnovalidate именно для этого варианта использования.Есть ли способ «игнорировать / пропустить» проверку правильности при нажатии кнопки отмены?

Ссылка на проблему на github: https://github.com/zurb/foundation-sites/issues/11426#issuecomment-441956255

1 Ответ

0 голосов
/ 27 ноября 2018

Решено в проблеме с github.В настоящее время Фонд не поддерживает эту идею.Обходной путь - переписать обработчик отправки в Foundation JS.Я сделал это так:

.on( "submit.zf.abide", function( e ){
    var $btn = $(document.activeElement);
    if (
            /* there is an activeElement at all */
            $btn.length &&

            /* it's a child of the form */
            t.$element.has($btn) &&

            /* it's really a submit element */
            $btn.is('[type="submit"]') &&

            /* it has a "formnovalidate" attribute */
            $btn.is('[formnovalidate]')
    ) {
        return true;
    }else{
        return t.validateForm()
    }
})
...