2017-05-09 8 views
2

私はtplでコンボボックスを持っています。ユーザーに8文字以上入力しないように制限したいと思っていました。コンボボックスにはenforceMaxLengthがなく、maxLengthにはツールヒントが与えられますが、ユーザーはmaxLengthよりも多くの文字を入力できます。 https://fiddle.sencha.com/#view/editor&fiddle/1vamユーザーにmaxLengthを超えるextjsを入力させてくださいCombobox

+2

コンボボックスは、バージョン6.2では 'enforceMaxLength'を持ち、少なくともバージョン4.1.1からはるか遠くにあります。変更されたフィドル[ここ](https://fiddle.sencha.com/#view/editor&fiddle/1var)を参照してください – chrisuae

+0

ありがとうchrisuaeそれはうまくいきました。 – Imran

答えて

3

Ext.form.field.ComboBoxtextfieldで利用可能なすべての設定オプションのようにExt.form.field.Textから派生し、あなたはcomboboxが本当に破壊方法でそれらを上書きしなければならなかったか、または彼らはまだ働いているかどうかを確認することができます。たとえ全部ではないにしても、コンボボックスの文書には含まれていなくても、そのほとんどは利用可能であるはずです。

ユーザーchrisuaeが既にコメントで指摘したように、enforceMaxLengthはまだcomboboxで動作しています。これは、comboboxは、maxLengthが利用可能になるために必要な2つの部分のうち、Ext.form.field.Base.fieldSubTplまたはExt.form.field.Text.getSubTplDataを削除しないためです。

comboboxソースコードでgetSubTplDataがオーバーライドされていますが、data = me.callParent([fieldData]);という行は元のコードがまだ実行されていることを示しています。

+0

ありがとうアレキサンダー私はコンボボックスのためにenforceMaxLengthを試していませんでした。ありがとうございます – Imran

+0

この問題で私を助けることができます@アレキサンダーhttp://stackoverflow.com/questions/43938907/how-to-clear-reset-the-panels-in-a-accordion-on-change-of-records- in-a-grid-extj – Imran

関連する問題