0

私はノックアウトを使用してモデルを作成しており、多くのフィールドがあります。

function model(){
 var self = this;
 self.field1 = ko.observable('');
 self.field2 = ko.observable('');
 self.field3 = ko.observable('');
 self.field4 = ko.observable('');
 self.field5 = ko.observable('');         
 self.validatemode = function (){

     if(!(self.field1 && self.field2 &&self.field3 &&self.field4 &&self.field5))         
          //Model is not valid 
     }
     else{
       // Model is valid 
    }
 }

これは私が現在行っていることですが、私には良く見えません。

私の質問は、これを行うためのより専門的な方法は何かということです。

前もって感謝します 。

4

2 に答える 2

0

フィールドを配列に入れることができる場合は、次のようにチェックします。

var nonEmpty = false;    
ko.utils.arrayForEach(self.fields, function(field){nonEmpty = nonEmpty || field()});
于 2013-06-09T16:07:33.977 に答える
0

ノックアウト検証は機能しますが、jquery 検証ほど優れていないか、簡単ではありません。ノックアウト検証は、検証するフォーム要素が必要ないため便利ですが、ノックアウト検証は、そのフィールドを検証しないためにフィールドが表示されていないかどうかを検出するカスタム検証を記述する必要があるため、より困難です。Jquery は、これらのことをすぐに実行でき、form.valid() 関数以外にセットアップで構成を提供する必要がないため、優れています。

于 2013-06-09T19:14:23.377 に答える