2012-03-30 5 views
0

jQuery-UIダイアログのSELECT要素にeditable-optionsプラグインを使用しています。編集可能なオプションは、名前の通り、ユーザーがOPTION要素を編集できる選択ボックスを可能にします。編集可能なオプションでESCがjQuery-UIダイアログに伝播しないようにするにはどうすればよいですか?

編集可能なオプションのドキュメントでは、「ユーザーはエスケープキーを押して変更をキャンセルすることができます」と表示されます。

問題は、ESCキー押しイベントが、選択コントロールが入っているダイアログによって伝播されるか、独立して検出され、ユーザーが編集している特定の項目に加えられた変更を取り消すだけでなくダイアログ内で変更されている可能性があります。 いいえユーザーの利便性。

私はいくつかの調査を行いました(主にthis questionとそのリンク先を読んでいました)、editable-optionsコードのエスケープキーイベント処理にe.stopPropagation()を呼び出すべきだと思っていましたが、仕事はありません。

私はjQuery 1.7.1とjquery-ui 1.8.16を使用しています(上記のリンクに記載されている問題の修正が必要ですが、それはもちろんダイアログ自体にしかありません。 )。

誰かが正しい方向に私を向けることができますか?あるいは、修正することができない場合は教えてください。そうであれば、編集可能なオプションは使用できなくなります。私は自分の研究を続け、何かを見つけたらここに追加するか、自分の質問に答えます。

答えて

0

さて、私はそれを理解して約束したとおり、ここに答えがあります。

のjQuery UIのダイアログのコードはもちろん、それ以前に発生し、のKeyDownイベントを処理しながら、それは、編集可能な-オプションコードはからkeyupイベントを処理することが判明しました。したがって、editable-optionsコードはイベントをインターセプトできません。

私はe.stopPropagation()とpresto!という名前のeditable-optionsにkeydownハンドラを追加しました!問題が解決しました。

+0

誰かが開発者と連絡を取る方法を知っているので、私は変更を提案できますか? –

関連する問題