Правило jquery validate minlength не работает
У меня есть форма с полем пароля. Длина пароля должна быть не менее 8 символов.
<form action="/account/register" method="post" id="form-register">
<div class="input-row">
<input name="data[User][password]" type="password" id="FUserPassword" class="required" placeholder="Password">
</div>
</form>
$("#form-register").validate({
rules: {
FUserPassword : {
minlength: 8
}
}
});
Он применяет правило "требуется", но оно просто игнорирует правило "minlength".
Что я делаю неправильно? Я использую тот же код (часть JS) на других страницах, и он работает как ожидалось.
Ответы
Ответ 1
Validate ищет name
поля ввода, а не id
. Из документации для опции rules
:
Пара ключей/значений, определяющих пользовательские правила. Ключ - это имя элемента (или группы флажков/переключателей)
С учетом этого вы должны использовать что-то вроде этого:
$("#form-register").validate({
rules: {
'data[User][password]': {
minlength: 8
}
}
});
Для ввода имен со специальными символами обязательно указывайте ключ объекта.
Пример: http://jsfiddle.net/kqczf/4/
Ответ 2
Я не знаю, почему он не работает со значениями больше 254, я пытался, но 254 является значением максимальной длины, которое может проверить плагин.