0

Bootstrapのモーダルコンポーネントを使用して、Webアプリに[ユーザーの追加]ダイアログを作成しています。ユーザーがすばやく作業できるようにするために、エスケープを入力キーで閉じて、期待どおりにフォームを送信したいと思います。divが入力を受け入れないという通常の問題に遭遇した後、モーダル取得フォーカスの下のいくつかの要素は、単にキープレスイベントを「ドキュメント」にフックすることになりました。これは、1つの例外を除いて実際にうまく機能します。

フォームにデータを入力すると、ブラウザに提案ボックスが表示されることがあります。

エスケープを押して提案ボックスを閉じるか、Enterキーを押して要素を選択すると、残念ながらキー押下イベントがトリガーされ、フォームが閉じられるか送信されます。

この状況でキー押下を無視できる方法はありますか?まったく異なるアプローチを取る必要がありますか?

4

2 に答える 2

0

別のアプローチはautocomplete="off"、入力タグに追加することです。

于 2012-10-17T14:48:44.567 に答える
0

$(document).keyUp()ESC と Enter キー イベントをバインドするために使用しましたか。その場合、その関数にこのコードを追加して、入力タグで押されたキープレスを無視することができます。

$(document).keyup(function(e){
    if(e.srcElement.tagName == 'INPUT'){
        return;
    }else{
        // Your code to bind function to exit div or submit
    }
});
于 2012-10-17T15:42:06.457 に答える