JQuery - подключаемые модули для проверки в реальном времени

Я ищу плагин для jQuery, который может проверяться при нажатии клавиши и после потери фокуса (текстовые поля).

Сейчас я использую jVal - плагин проверки полей формы jQuery. Работает неплохо. Единственная проблема, с которой я столкнулся, это то, что я могу использовать только общее сообщение об ошибке.

Например: Мне нужна строка от 2 до 5 символов. Если он слишком короткий, я хотел бы отобразить сообщение об ошибке, указывающее, что оно короткое, равно как и слишком длинное. Я знаю, что могу отобразить сообщение об ошибке, которое требует, чтобы строка содержала от 2 до 5 символов. Выполняемая проверка более сложна.

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


Редактировать:

Инструмент проверки должен предотвращать использование определенных букв или цифр и не требовать формы.

Спасибо

Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
9
0
21 368
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

Ответ принят как подходящий

Похоже, это соответствует вашему описанию:

Вот фрагмент кода, скопированный из источника демонстрации:

// validate signup form on keyup and submit
$("#signupForm").validate({
    rules: {
        firstname: "required",
        lastname: "required",
        username: {
            required: true,
            minlength: 2
        },
        password: {
            required: true,
            minlength: 5
        },
        confirm_password: {
            required: true,
            minlength: 5,
            equalTo: "#password"
        },
        email: {
            required: true,
            email: true
        },
        topic: {
            required: "#newsletter:checked",
            minlength: 2
        },
        agree: "required"
    },
    messages: {
        firstname: "Please enter your firstname",
        lastname: "Please enter your lastname",
        username: {
            required: "Please enter a username",
            minlength: "Your username must consist of at least 2 characters"
        },
        password: {
            required: "Please provide a password",
            minlength: "Your password must be at least 5 characters long"
        },
        confirm_password: {
            required: "Please provide a password",
            minlength: "Your password must be at least 5 characters long",
            equalTo: "Please enter the same password as above"
        },
        email: "Please enter a valid email address",
        agree: "Please accept our policy"
    }
});

Я использую плагин jQuery: проверка. он прекрасно работает с созданием элементов DOM на лету. Создавая их на лету, убедитесь, что указаны имя и идентификатор атрибутов. Я почти уверен, что плагин использует атрибут name, чтобы найти их в html. Если имя отсутствует, их невозможно найти.

Также это может быть еще один хороший инструмент для проверки. http://www.livevalidation.com

Насколько я могу судить, Livevalidation использует встроенный javascript - не круто! Кроме того, я думаю, что в некоторых случаях страдает удобство использования, когда вы даете людям сообщение об ошибке до того, как они успеют заполнить форму.

Sam Murray-Sutton 06.11.2008 14:24

В текущей магистрали jVal 0.1.4 он может обрабатывать немного более надежную функциональность проверки ошибок, чем предыдущие версии, позволяя вам возвращать строки в качестве сообщения об ошибке. Получить текущую ревизию 11 jVal 0.1.4 trunk по адресу http://jquery-jval.googlecode.com/svn/trunk/jVal.js

Вот пример поля пароля, которое будет проверять:

  1. Если пароль состоит из 8 или более символов
  2. Если в пароле есть хотя бы один числовой символ
  3. Если в пароле есть хотя бы один или несколько буквенных символов

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

<input id = "web_pswd" type = "password" size = "20"
    jVal = "{valid:function (val) { if ( val.length < 8 ) return '8 or more characters required'; else if ( val.search(/[0-9]/) == -1 ) return '1 number or more required'; else if ( val.search(/[a-zA-Z]/) == -1 ) return '1 letter or more required'; else return ''; }, styleType:'pod'}"

для меня лучше всего будет http://livevalidation.com/ или тот из baseassistance http://bassistance.de/jquery-plugins/jquery-plugin-validation/

jVal и live-form-validation могут быть нормальными, но я думаю, что весь смысл использования gjQuery заключается в использовании чистого, беспрепятственного кода, а они требуют так много беспорядка, что это не вариант для меня.

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

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