#regex #jquery-validate #validation
#регулярное выражение #jquery-проверка #проверка
Вопрос:
я использую плагин проверки jquery и пытаюсь определить правило для единственного поля формы: значение поля должно содержать строку из пяти чисел (значение поля всегда будет содержать буквы). Я попробовал с обязательным правилом (зависимость-обратный вызов) и получил что-то вроде этого:
rules: {
field: {
required: function(element) {
var value_field = $('#field').attr('value');
}
}
}
Теперь мне нужно выполнить поиск в value_field для строки из пяти чисел.
Использую ли я хорошее правило для этого случая? И как искать нужную строку?
Спасибо
Ответ №1:
Вам необходимо добавить пользовательский метод в средство проверки, прежде чем настраивать средство проверки в соответствии со своими правилами:
$.validator.addMethod("FiveDigits", function(value, element) {
return this.optional(element) || /^d{5}$/.test(value);
}, "A 5 digit number please");
затем используйте следующее правило :
fieldName : { required : true, FiveDigits: true }
Ответ №2:
// define variables
var field_value, regexp;
// set field_value to #field's value
field_value = $("field").val();
// the regular expression that matches the pattern we're looking for
regexp = /d{5}/;
if (field_value.match(regexp)) {
// do something
} else {
// do something else
}
Комментарии:
1. Спасибо, ваш код кажется хорошим, но я не могу найти, как применить его с помощью jquery validate. Я добавил новый метод в ваш код, но он не работает.