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-focusetc css クラスがあり、オブジェクトを調べると、プライベートhasFocusプロパティがまだ真であることがわかります。
助言がありますか?
f.onBlur()呼び出し後に明示的に呼び出してみblur()ましたが、違いはありませんでした。
(ところで、フィールドはフォームに属していないため、送信するフォームはありません。)