2017-02-12 12 views
1

notesEntryFormは、フォーム上のボタンのクリックイベントを発生させる

こんにちは、上記のフォーム、のような長い形式は、私はキー入力押すことができますフォーカスを持っていると、これが実行されますよう:

$(document).ready(function(){ 
$('#notesEntryForm').keyup(function(e){ 
     if(e.which == 13){ 
     alert('You pressed enter'); 
     } 
    }); 
}); 

問題はどちらかのIFrameをクリックするとすぐに問題になります。メインフォームがフォーカスを失い、フォームのIDも参照するため、別のHTMLページがロードされているIFrameにフォーカスが当たっていることがわかります。私の質問は、IFrameにフォーカスがあるときに、メインのフォームに応答するか、またはリッスンするためのメインフォームを取得するにはどうすればいいですか?特に右上のものは表示用ですが、両方のために働く? IFrame IDを使用しようとしましたが、動作しませんでした。フォーカスは実際にIFrameに読み込まれたページにあるためだと思います。シンプルなソリューションはありますか、IFrameに読み込まれるすべてのページにコードを追加する必要がありますか?

これを行う理由は、IFrameのページに値を追加すると、[追加]ボタンが有効になり、ユーザーが[編集]ボタンをクリックするのではなくEnterキーを押すことができるからです。ボタンを追加する必要があります。

これは私の最初の質問です。私が間違ってしまった場合、私はお詫び申し上げます。助けてくれてありがとう。

+1

試しましたか? $(document).keyup(function(event){ ... }); – Sami

+0

はい私はそれを試みた。それはうまくいかなかった。 –

+0

はい、動作しませんでした。 –

答えて

2

IFrameに読み込まれるすべてのページにコードを追加する必要がありますか?

はい。

イベントはフレームを親ドキュメントにバブリングしません。

+0

私はそれが事実になるとは思っていませんでしたが、おそらくそれが疑われました。それは私がすでに持っているものに似たコードですか?メインフォームの[追加]ボタンをクリックする必要があることはわかっていますが、IFrameのページからどのようにすればよいでしょうか? –

関連する問題