правило 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
            }
        }
    });

Он применяет правило" required", но он просто игнорирует правило" minlength".

что я делаю не так? Я использую тот же код (часть JS) на других страницах, и он работает так, как ожидалось.

1 ответов


проверить, ищет name поля ввода, а не id. Из документации для :

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

имея это в виду, вы должны использовать что-то вроде этого:

$("#form-register").validate({
    rules: {
        'data[User][password]': {
            minlength: 8
        }
    }
});

для входных имен со специальными символами обязательно укажите объект ключ.

пример: http://jsfiddle.net/kqczf/4/