私はExtJsでこのフォームを持っています。 field1が空でない場合、field2は空であってはなりません。しかし、リスナーが発砲しても動作しません。ExtJsフォーム検証の質問
{
xtype : 'panel',
title : 'title 1',
items : [{
xtype : 'fieldset',
title : 'field A',
items : [{
xtype : 'textfield',
fieldLabel : 'Line 1',
id : 'field1',
listeners: {
change: function(f, new_val) {
if (new_val) {
//alert("change" + new_val);
f.field2.allowBlank = false;
} else {
f.field1.allowBlank = true;
}
}
},
code for field2
]
}
allowBlankは設定値であり、そのまま使用することに同意しますが、それでもプロパティとして使用することはできます。私は以前のプロジェクトでそれをやっていたので、OPが描いている望ましい機能を手に入れることができました。今私はそれをする方法を覚えて家に帰るまで待つ必要があります:P。私を間違えさせてはいけません。コードは間違いなくクルージュでした。 – McStretch
@McStretch - あなたが正しいように見えます。ちょうどそのコードを見て、確かにTextFieldの内部は検証時にthis.allowBlankを検査するだけです。ドキュメントには、単なる設定オプションではなく、パブリックプロパティとしてリストされているはずです。 – timdev
私は開発者が読み込み専用にしていると思っていますが、その場でプロパティを変更すると便利な場合があります。 OP事件のようなものです。だから私は同意する、それはおそらくこの機能を開発する明確な方法がない限り、プロパティである必要があります。 – McStretch