0

次のモーダル ポップアップ スクリプトを使用しています: http://fancyapps.com/fancybox/

IFrame を使用したモーダル ポップアップがあります。iFrame には登録フォームがあります。ユーザーが登録すると、メンバー専用ページにリダイレクトされます。現在、それらは同じモーダル ウィンドウでリダイレクトされています。モーダル ウィンドウが閉じて、モーダル ウィンドウをクリックしたページがメンバー専用リンクにリダイレクトされるようにします。

これがJavaScriptです:

  $(document).ready(function() {
    $(".various").fancybox({
         'width' : '85%',
         'height' : '86%',
         'paddingTop' : '40',
         'autoScale' : false,
         'transitionIn' : 'none',
         'transitionOut' : 'none',
         'type' : 'iframe'
    });
});

モーダル ボックスを呼び出す HTML は次のとおりです。

<a class="various button" data-fancybox-type="iframe" href="/signup-test">
4

1 に答える 1

0

正常に登録されたメンバーのみをリダイレクトする必要があるため、ユーザーを登録および/または検証コードの成功関数にリダイレクトするためのコードを挿入する必要があります。

残りのコードがないと、特定の例に対処することはできませんが、これを行う2つの方法は次のとおりです。

オプション1-Javascript関数を作成する

iframeを閉じてユーザーをリダイレクトするJavascript関数を作成できます。これを行う秘訣は、iframeが閉じた後もスクリプトが実行され続けるように、スクリプトを親ドキュメントに配置することです。

この関数は親ドキュメントに含まれます。

function closeiframe_redirect(url){
    $.fancybox.close();
    window.location = url;
}

関数を呼び出す場合は、次のコードを挿入します。

parent.closeiframe_redirect('members_page.html');

オプション2-AJAX成功関数で

submitHandler: function (form){
    $.ajax({
    type: 'POST',
    url: 'registration-exec.php',
    data: $("#loginForm").serialize(),
    success: function(data) {   
        if(data == "true") {
            // This closes the Registration Form
            $("#registrationForm").fadeOut("fast");
            window.location = 'members_page.html'
        }
   });
}           
于 2013-01-21T21:31:52.547 に答える