2013-05-30 4 views
1

Я довольно новичок в KockoutJS Но у меня есть this working jsFiddle, который проверяет. Но я хотел бы иметь набор из примерно 5 наблюдаемых и проверять этот набор. Подразумевается, что это какой-то волшебник, и на каждом шаге валидация наблюдаемых на этом шаге.Нокаут частичная валидация viewmodel

Я читал о validatedObservable, но должен ли я сделать var для него вне viewModel, а затем ссылаться на наблюдаемые в viewmodel? Я нашел this as only reference и испытываю трудности с пониманием группировки и проверки с проверкой нокаута.

Вот мой JS код:

function ovm() { 
    var self = this; 
    this.delStreet = ko.observable("").extend({required: true}); 
    this.deliveryNotSameAsInvoice = ko.observable(false); 
    this.invStreet = ko.observable(''); 
    this.delCountry = ko.observable(""); 
    var invStreetCheck = ko.computed(function(){ 
     var checked = self.deliveryNotSameAsInvoice(), 
      delStreet = self.delStreet(); 
     if(!checked) 
      return self.invStreet(delStreet); 
     return self.invStreet(); 
    }); 
} 

var vm = new ovm(); 
ko.applyBindings(vm); 

$("#s1").click(function(){ 
    alert(vm.delStreet.isValid()); 
}); 

ответ

1

Here's how I solved this problem for someone else.

Он использует ValidatedViewModel от Carl Schroed и позволяет вам выбирать, какие параметры проверки вы хотите применить - чрезвычайно удобно для многоступенчатых форм.

+0

Спасибо, я прочитал комментарии и думаю, что для моего решения лучше всего кластеризовать validatedobservable, но я понятия не имею, как это работает. потому что я не хочу иметь много логики в viewmodel. –

+0

Я обнаружил, что у Knockout была действительно крутая кривая обучения для меня, поэтому я знаю, как она себя чувствует. Я предлагаю сыграть со скрипкой, которую я создал, и посмотреть, как вы справитесь с ней: http://jsfiddle.net/79IT/aYb6t/26/ – 79IT

+0

Спасибо за этот jsfiddle. У меня был этот с провереннымобслуживанием http://jsfiddle.net/jphellemons/BkXpZ/23/ Но я обязательно посмотрю на ваш jsfiddle! благодаря! –

Смежные вопросы