1

Dojo 1.6 を使用しています。データストアに接続された FilteringSelect があります。ユーザーがフィールドをクリックしたときにフィールドを空にしたいので、ユーザーは何も削除する必要はありません。フォーカス時に textbox.value を "" に設定することで、なんとかそれを行うことができました。

dojo.connect(sel, 'onFocus', function (value) {
    this.textbox.value = ""
});

私が抱えている問題は、ユーザーがドロップダウンで要素を選択すると、onChange が発生しますが、コントロールはフォーカスを失うことはないため、ユーザーが次に値を変更しようとすると、フィールドを手動で空にするか、クリックする必要があります。コントロールの外側をクリックしてから、コントロール内に戻ります。コントロールがフォーカスを失うように強制する方法はありますか?

http://jsfiddle.net/Jyvra/1/にサンプルを用意しました

4

1 に答える 1

3

これを実現するために操作しようとしている Widget プロパティは ですfocusNode。フォーカスを取得するウィジェットにはこれがあるため、次の行をonChangeハンドラーに追加するだけです。

this.focusNode.blur();

そして、あなたはすべて準備ができています。ここにその行を追加してフィドルをチェックアウトできます

于 2013-02-22T19:13:24.007 に答える