JQuery не включает поле формы в проверке

0

У меня есть форма на моем сайте, когда я нажимаю submit, у меня есть скрипт проверки, который проверяет наличие пустых полей. В моей форме есть только одно поле, которое не требуется, поэтому я пытаюсь добавить это как исключение. Вот мой текущий скрипт

$("#quote_form").submit(function(){
    var isFormValid = true;

    $("input, select").not('.discount').each(function() {
        if ($.trim($(this).val()).length == 0){
            $(this).addClass("highlight");
            isFormValid = false;
        }
        else{
            $(this).removeClass("highlight");
        }
    });

    if (!isFormValid) {
        $('.error').text('**Please fill in all highlighted fields**');
    }
    else {
        $('.error').text('');
    }

    return isFormValid;
});

Это работает в том, что когда я нажимаю кнопку "Отправить", он не добавляет класс "выделить" в поле с классом "скидка" ОДНАКО, когда я заполняю все поля формы, кроме скидки, он все равно не отправит. Может ли кто-нибудь сказать мне, что мне не хватает?

  • 0
    В jquery нет .not() может быть, вы относитесь к селектору :not ?
  • 1
    Я думал, что был селектор .not, смотрите здесь api.jquery.com/not
Показать ещё 7 комментариев
Теги:
forms
submit

1 ответ

0

Я пошел бы на более полный и более простой подход: используйте jquery.validate.

С помощью этого широко используемого плагина вы можете управлять правилами валидации либо по коду, либо по предложению! С помощью классов и атрибутов css, непосредственно применяемых к вашим входам (т.е. Требуется, электронная почта, минимальная/максимальная длина, минимальное/максимальное значение и т.д.).

Проверьте здесь несколько примеров использования.

Обратите внимание, что сообщения об ошибках и соответствующие локализации уже включены.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню