jQuery - плагины для проверки в реальном времени - PullRequest
9 голосов
/ 16 октября 2008

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

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

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

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


Edit:

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

Спасибо

Ответы [ 5 ]

14 голосов
/ 16 октября 2008

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

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

// 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"
    }
});
2 голосов
/ 08 октября 2009

для меня лучшим будет http://livevalidation.com/ или один из базовых помощников http://bassistance.de/jquery-plugins/jquery-plugin-validation/

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

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

2 голосов
/ 23 сентября 2009
0 голосов
/ 28 ноября 2008

В текущей магистрали jVal 0.1.4 он может обрабатывать немного более надежную функциональность проверки ошибок, чем предыдущие версии, позволяя вам возвращать строки в качестве сообщения об ошибке. Получить текущую редакцию 11 jVal 0.1.4 транк в 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'}"
0 голосов
/ 31 октября 2008

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...