2012-07-10 119 views
0

我使用下面的模式彈出腳本:http://fancyapps.com/fancybox/Fancyapp模式對話框關閉的iFrame

我有一個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"> 

回答

0

由於您只想重定向誰已經成功註冊會員,你需要插入代碼將用戶重定向到註冊和/或驗證代碼的成功功能。

我不能沒有你的代碼的其餘部分解決您的具體的例子,但兩種方式來做到這一點是:

選項1 - 創建一個JavaScript函數

您可以創建一個JavaScript函數關閉iframe並重定向用戶。這樣做的訣竅是將腳本放在父文檔中,以便在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' 
     } 
    }); 
}