バリデーションのいくつかが様々なビューで繰り返されます。再利用を容易にするために、それらを外部ファイルに移動したいと思います。代わりに、このようVTypesシングルトンに検証を適用するのでExtJS外部のファイルにカスタムバリデーションを移動する
Ext.apply(Ext.form.field.VTypes, Ext.custom.validations.Oib);
:例として、私はこのようなものを使用できるようにしたいと思い
Ext.apply(Ext.form.field.VTypes, {
oib: function(val, field) {
oib = val.toString();
if (oib.length != 11) return false;
var b = parseInt(oib, 10);
if (isNaN(b)) return false;
var a = 10;
for (var i = 0; i < 10; i++) {
a = a + parseInt(oib.substr(i, 1), 10);
a = a % 10;
if (a == 0) a = 10;
a *= 2;
a = a % 11;
}
var control = 11 - a;
if (control == 10) control = 0;
return control == parseInt(oib.substr(10, 1));
},
oibText: 'Wrong oib.',
oibMask: /[\d]/i
});
どのようにそれを行うことができますか?
私はそれが本当だと思うが、私は別のHTMLページを持っている必要がどこ、私は特定の状況があります。
はシングルトンに検証を適用し、ファイル
最後を要求します、各ExtJSスクリプトを呼び出します。だから私は、再利用を容易にするために、バリデーションを別々のファイルに入れたいと思っています。 – ipavlic
すべてのページに含まれる共通の.jsファイルを作成します。どうしたの? – sha
Ext.requireで適切なバリデーションをロードしたいのですが、バリデーションのためにそれを行う方法がわかりません。 – ipavlic