ExtJs 4.1.1 の質問
パネル内のテキストボックスのセットにカスタムクラスを適用しようとしていますが、パネル内のすべてのテキストボックスに適用されるように、パネルのデフォルト属性でfieldClsを指定しています。
以下はサンプルコードです
pnlTest = Ext.create('Ext.panel.Panel', {
width : 600
,height : 190
,defaults: {xtype:'textfield', fieldCls:'my-custom-class'}
,items : [
{name :'name1', fieldLabel:'Name 1' }
,{name :'name2', fieldLabel:'Name 2' }
,{name :'name3', fieldLabel:'Name 3' }
,{name :'name4', fieldLabel:'Name 4' }
]
});
生成された HTML を調べると、input 要素に 2 つのクラスが関連付けられていることがわかります
- my-custom-class と
- x-form-field (テキストボックス入力の拡張デフォルト クラス)
スタイルをオーバーライドしているため、入力要素にx-form-fieldを使用したくありません
ExtJs のドキュメントには、fieldClsのデフォルト値は'x-form-field'であると記載されていますが、これは、fieldCls の値を指定した場合、デフォルトに追加するのではなく、デフォルトを置き換える必要がある、またはここで何か間違ったことをしているという意味ではありません。
私はこれについて少し調査しましたが、sencha フォーラムに記録されたバグや懸念事項は見つかりませんでした。
textfield の fieldCls 属性の使用方法を教えてもらえますか?
回避策として、現在、すべてのスタイルをオーバーライドするために fieldStyle を提供していますが、私の目標は、スタイル仕様の文字列がかなり長く動的であるため、クラスを使用することです
ありがとうございました