Подтвердите конкретное поле / определенное правило, используя проверку Kendo UI
В настоящее время у меня есть следующие пользовательские правила для проверки полей моей формы.
правила
$scope.validator = $("#frmPreregistration").kendoValidator({
rules: {
varifySsn: function (input) {
var ret = true;
if (input.is("[name=last4Ssn]") && $scope.Last4DigitsSsn != undefined ) {
ret = $scope.validateSsnLast4Digit();
}
return ret;
},
varifyDob: function (input) {
var ret = true;
if (input.is("[name=dob]") && $scope.DateOfBirth != undefined ) {
ret = $scope.validateDateOfBirth();
}
return ret;
},
varifyZipCode: function (input) {
var ret = true;
if (input.is("[name=zipCode]") && $scope.ZipCode != undefined ) {
ret = $scope.validateZipCode();
};
return ret;
}
},
messages: {
varifySsn: $scope.resources.SsnLast4DigitDoesNotMatch,
varifyDob: $scope.resources.DobNotMatchWithSelectedUserType,
varifyZipCode: $scope.resources.ZipCodeNotMatchWithSelectedUserType,
}
}).data("kendoValidator");
Я проверяю форму всякий раз, когда пользователь вводит значение в любое из полей формы $scope.validator.validate()
Это приводит к тому, что правила запускаются для всех полей еще до того, как пользователь введет в них какое-либо значение.
Вопрос Есть ли возможность, что я могу запустить конкретное правило проверки за раз или запустить проверку для определенного поля?
1 ответ
Решение
Ты можешь использовать validateInput
для конкретного элемента.
Пример:
$scope.validator.validateInput($("input[name=dob]"));
скрыть неверное сообщение, которое вы можете использовать hideMessages
функция
$scope.validator.hideMessages();