numberfield
ユーザーがエンターキーを押したときにフォーカスを失いたい入力があります 。
現在の構成は次のとおりです。
{
xtype: 'numberfield',
minValue: 0,
maxValue: 99999,
hideTrigger: true,
keyNavEnabled: false,
mouseWheelEnabled: false,
enableKeyEvents: true,
listeners: {
specialkey: function(f, e) {
if (e.getKey() == e.ENTER)
f.blur();
}
}
}
specialkey
ハンドラーは機能し、期待どおりに呼び出しますblur()
が、唯一の結果は入力からキャレットが消えることです (DOM テキスト入力要素がぼやけていることを示します)。フィールドにはまだすべてのx-form-focus
etc css クラスがあり、オブジェクトを調べると、プライベートhasFocus
プロパティがまだ真であることがわかります。
助言がありますか?
f.onBlur()
呼び出し後に明示的に呼び出してみblur()
ましたが、違いはありませんでした。
(ところで、フィールドはフォームに属していないため、送信するフォームはありません。)