2011-09-13 8 views
0

ログインボタンをクリックするとポップアップするログインボックスがあり、そのライトボックスにログインフォームが読み込まれます。ライトボックスフォーカスにフォーカスします。リフレッシュ後のみ動作します

ページが読み込まれたときにログインボックスにフォーカスを設定しようとすると、 onLoad = "document.loginForm.login.focus()"を設定しようとしました。

しかし、Lightboxのログインフォームをリフレッシュした後は、これはその背後にある親ドキュメントではなく、動作しているように見えます。

私はタイミングの問題かもしれないと思ったので、関数にタイムアウトオプションを追加しようとしましたが、これはうまくいかなかったようです。

リフレッシュ後に動作する理由は何ですか

おかげ 編

答えて

0

$(document).ready(function(){ 
    $("iframe").load(function(){ 
     window.frames[0].document.forms['loginForm'].login.focus(); 
    }); 
}); 

あなたのページに複数のインラインフレームを持っている場合は、あなたの目標はiframeにIDを与えるとANからそれを呼び出す代わりに$("iframe")

+0

ここでaboutsはこれを行う必要がありますか? eds – Eds

+0

ああ申し訳ありません:)これはiframeポップアップ – haynar

+0

を含む親ページにあり、iframeドキュメントに "login"という名前の入力が含まれている "loginForm"というフォームを持っていると考えています – haynar

0

は、ボタンのクリックイベントにdocument.loginForm.login.focus()を呼び出してみてください。

私は、これはあなたを助けるべきだと思います
+0

$("#myIframeId")を使用ライトボックス内のonclickイベントは正しく動作するようですが、親ページのログインボタンに追加する方法はわかりません。ライトボックスを表示する 私のonclickは次のとおりです。 のonclick = \ "TINY.box.show({IFRAME: '/サイト/メイン/ログイン/ログイン-form.php'、 \t幅:350、高さ:250、 fixed:false})\ " – Eds

+0

あなたはどのJSライブラリを使用していますか? – haynar

+0

私はjqueryスクリプトを親ページにロードしていますが、それ以外のものはありません。 – Eds

関連する問題