Плагин проверки jQuery - пользовательское сообщение - PullRequest
31 голосов
/ 21 июля 2011

Я новичок в JQuery и использую плагин проверки JQuery .

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

Я бы получил сообщение примерно так:

Требуется пароль поля. вместо значения по умолчанию Это поле обязательно для заполнения .

Поле PostCode должно содержать не менее 3 символов. вместо значения по умолчанию Пожалуйста, введите не менее 3 символов.

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

Возможно ли это?

Ответы [ 5 ]

45 голосов
/ 21 июля 2011
$("#signupform")
    .validate({
        rules: {
            password: "required",
            postcode: {
                required: true,
                minlength: 3
            }
        },
        messages: {
            password: "Field Password is required",
            postcode: {
                required: "Field PostCode is required",
                minlength: "Field PostCode must contain at least 3 characters" 
            }
    });
17 голосов
/ 06 января 2013

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

jQuery.extend(jQuery.validator.messages, {
    required:"This field is required.",
    equalTo:"Password fields do not match.",
    email:"Please enter a valid email.",
});
8 голосов
/ 16 марта 2017

Существует более краткий способ добиться этого.

Используйте " data-msg " или " data-msg- (rulename)" дляпереопределить сообщение об ошибке по умолчанию для предварительно определенного правила или пользовательского правила.(после проверки jQuery v1.11.0, в настоящее время v1.16.0)

<input id="pwd" name="pwd" type="password" value=""
       required
       data-msg-required="Field Password is required." />

<input id="postcode" name="postcode" type="text" value=""
       required
       data-msg-required="Field PostCode is required."
       minlength="3"
       data-msg-minlength="Field PostCode must contain at least 3 characters." />
4 голосов
/ 02 января 2013

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

Я нашел этот ответ в похожем вопросе переполнения стека: Как мы можем задать правила для плагина проверки jquery по классам?

$.validator.addMethod(
    "newEmail", //name of a virtual validator
    $.validator.methods.email, //use the actual email validator
    "Custom error message"
);
1 голос
/ 24 марта 2017

добавить это после плагина:

jQuery.extend(jQuery.validator.messages, {
    required: "Your new default message",
    email: "That's not a valid email"
});

вы можете поместить его в отдельный файл, если хотите, но убедитесь, что он включен после самого плагина

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