フォームを含むjquery UIモーダルボックスがあります。jquery uiモーダルボックス内のフォームが隠された後、Keypressがもう呼び出されない
Enterキーが押されたことを処理するkeypressイベントが宣言されました。 モーダルボックスに含まれるフォームを非表示にすると、keypressイベントはもはや呼び出されません。
この動作は、ここに再現されていますhttps://jsfiddle.net/patrick29/jqp4wp77/
$('.dialog').on('keypress', function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
submit();
}
});
function submit() {
alert('ok');
$('.dialog form').hide();
}
初めて入力しますが、私はOKメッセージを受け取る押されます。その後、フォームが隠され、2回目のEnterが押されました。私はもうokメッセージを受信しません。
私はフォームを非表示にしても、キー入力イベントの作業を行う理由とその理由を知っていますか?
ありがとうございます!
それは隠されたなら、あなたはその中のキーを押すことができるように、どのようにそれがフォーカスを持つことができますか? –
okボタンは非表示ではないモーダルボックスの1つで、フォームを隠すとモーダルボックスのキー入力イベント管理が変更されないことが予想されます – user2708647