2013-03-18 1 views
0

У меня есть вид модели определено следующее:Как получить один из результата проверки наблюдаемой месторождения в вычисляемое поле с помощью рамки Нокаут Validation

var ViewModel = function() { 
    var self = this; 
    self.name = ko.observable().extend({ required: true }); 
    self.identityCode = ko.observable().extend({ required: true, maxLength: 18, minLength: 15 }); 
    self.gender = ko.computed(function() { 
     // get gender information from the identiy code here 
    }); 
    self.birthdate = ko.computed(function() { 
     // get birthdate information from the identity code here 
    }); 
    self.form_onsubmit = function (form) { 
     if (!self.isValid()) { 
      self.errors.showAllMessages(); 
      return false; 
     } else { 
      return true; 
     } 
    }; 
}; 

, как вы можете увидеть код, указанный выше, гендерное поле и brithdate поля являются вычисленное поле, которое должно быть получено из идентификационного кода. я просто хочу знать, как получить результат проверки идентификационного кода, прежде чем делать это. благодаря!

ответ

0

Проверенные наблюдаемые продлены с помощью вычисленного isValid. Поэтому вы можете проверить результат с помощью:

self.gender = ko.computed(function() { 
     // get gender information from the identiy code here 
     if(self.identityCode.isValid()) { 
      // do something with the code 
     } 
    }); 
Смежные вопросы