- CompositeRule
- AllOf
- AnyOf
- NoneOf
- OneOf
- Rule
- AlwaysInvalid
- AlwaysValid
CharacterEncodingContainsEndsWithEquals- Interval
DateTimeIntervalDateInterval- FloatInterval
- IntInterval
- Length
TimeInterval
JSON- NotEmpty
NumberFiniteInfiniteIntEvenFibonacciOddPerfectSquarePrime
MultipleNegativePositiveZero
ObjectInstanceOf
- Pattern
CaseLowerUpper
Email- No
NoWhitespaceRomanNumeralsUrlVideoYouTube
VersionWordConsonantVowel
- Yes
- Scheme
- BankAccount [Расчетный счет]
- BankCode [БИК]
CardNumber (PaymentCardNumber)- CorrespondentAccount [Корреспондентский счет]
CountryCode[ISO 3166-1]CountrySubdivisionCode[ISO 3166-2]CurrencyCode[ISO 4217]- EntrepreneurCode (BusinessmanCode) [ОГРНИП]
IMEIIPAddressISBNISSNLanguageCode[ISO 639]- LegalEntityCode (ОГРН)
MACAddressPhoneCode(CountryCallingCode)PhoneNumber(TelephoneNumberingPlan)PostalCode- SocialInsuranceCode (СНИЛС)
- TaxpayerCode (ИНН)
- TaxpayerRegistrationReasonCode (КПП)
TLD(TopLevelDomain)VIN
StartsWith- Type
ArrayType- BoolType
- InfinityType
- NaNType
- NullType
- NumberType
- ObjectType
- StringType
- UndefinedType
- Val
- FloatVal
- IntVal
StringVal
var validator = new Validator();
validator.setRules({
id: ['NotEmpty', 'Int'],
link: [['Length', {max: 255, min: 5}]],
'name.brief': ['NotEmpty', 'String', ['Length', {max: 10}]],
'name.full': ['NotEmpty', 'String', ['Length', {max: 255, min: 10}]]
});
validator.setVals({
id: 3.14,
'name.brief': '12345678901',
'name.full': '12345'
});
console.log(validator.validate());
// false
var results = validator.getResults();
for (var fieldName in results) {
console.log(fieldName + ': ' + results[fieldName].get());
results[fieldName].errors().forEach(function (error) {
console.log(error.getMessage());
});
}
// id: false
// Значение должно быть целым числом
// Значение должно соответствовать всем правилам валидации
// link: true
// name.brief: false
// Длина должна быть меньше либо равна 10
// Значение должно соответствовать всем правилам валидации
// name.full: false
// Длина должна быть больше либо равна 10
// Значение должно соответствовать всем правилам валидации
validator.setVals({
id: 42,
link: '/test/',
'name.brief': 'Кратко',
'name.full': 'Полное название'
});
console.log(validator.validate());
// true
var results = validator.getResults();
for (var fieldName in results) {
console.log(fieldName + ': ' + results[fieldName].get());
results[fieldName].errors().forEach(function (error) {
console.log(error.getMessage());
});
}
// id: true
// link: true
// name.brief: true
// name.full: true