Обновленный вопрос внизу
Я пытаюсь проверить супер простую форму.В конце концов, имя пользователя будет сравниваться с оператором RegExp, и то же самое будет с паролем.Однако сейчас я просто пытаюсь изучить формат addMethod Validator.
У меня есть этот скрипт:
JQuery.validator.addMethod(
"legalName",
function(value, element) {
if (element.value == "bob")
{
return false;
}
else return true;
},
"Use a valid username."
);
$(document).ready(function() {
$("#form1").validate({
rules: {
username: {
legalName: true
}
},
});
});
, который, если я не ошибаюсь, должен вернуть false и ответить «Использоватьдействительное имя пользователя. "если бы я поместил «bob» в форму.
Однако это просто отправка.
Я ссылаюсь на JQuery BEFORE Validator в заголовке, как указано в инструкции.
Моя простая форма выглядит следующим образом:
<form id="form1" method="post" action="">
<div class="form-row"><span class="label">Username *</span><input type="text" name="username" /></div>
<div class="form-row"><input class="submit" type="submit" value="Submit"></div>
</form>
Наконец, как бы я реструктурировал функцию addMethod для возврата истинных if
и false
на этапе else
, сохраняя при этом сообщение для оповещения оfalse
возврат?(игнорируйте эту последнюю часть, если вы не понимаете, что я пытался сказать :))
Заранее спасибо.
Спасибо всем, кто указал на мои JQuery
-> jQuery
опечатка.
Новый -> RegEx в jQuery Validator addMethod
В идеале я пытаюсь превратить это в простой логинФорма (имя пользователя / пароль).Он предназначен только для демонстрации, поэтому к нему не будет прикреплена база данных или что-то еще, только некоторые простые проверки JS.Я хочу, чтобы имя пользователя было проверено на <48 символов, только английские буквы и цифры, без специальных символов.Я думал, что белый список будет проще, поэтому у меня было что-то вроде этого: <code>^[a-zA-Z0-9]*${1,48}, но я не уверен, что это правильный JS RegExp (он отличается от Ruby RegExp, если я не ошибаюсь? ... Обычно я использую rubular.com),Пароль будет похожим, но потребуется несколько прописных / строчных букв и цифр.
Мне кажется, мне нужно сделать еще один $.validator.addMethod
для legalPassword
, который будет очень похож.
Редактировать
изменил регулярное выражение на ^[a-zA-Z0-9]+$
и добавил maxlength: 48
к моей функции проверки.Однако регулярное выражение все еще не работает, и, насколько я могу судить, это правильно.