Async Validation - matthewnitschke/Kavie GitHub Wiki
As of v1.1 kavie supports async validation
You can create async validation rules as follows
Kavie.validatorFunctions.asyncValidator = {
async: true, // tells kavie this is async
validator: function(propVal, eleVal, callback) {
setTimeout(function(){
if (propVal == ""){
callback(true);
} else {
callback(false);
}
}, 1000);
}
}
Attach the validation function to observables just like you would any other validator
self.value = ko.observable().extend({
kavie: {
asyncValidator: true
}
})
Then validate like this
self.submit = function(){
Kavie.isValidAsync(self).then(function(isValid){
if (isValid){
console.log("All Good!");
} else {
console.log("Uh oh!");
}
});
}