簡體   English   中英

我正在使用彈出窗口進行用戶登錄,當用戶實際登錄時如何刷新父(打開)頁面?

[英]I'm using a popup for user login, how do i refresh the parent(openner) page when user actually logs in?

彈出功能是用JQuery編寫的。 它放在父頁面上。 當我單擊父頁面上的登錄按鈕時,將出現一個彈出窗口,詢問用戶名和密碼。 當用戶實際登錄時,一旦用戶關閉窗口,我想刷新父頁面。 如果用戶未登錄,則他只是打開彈出窗口並關閉,我希望父頁面保持原樣(不刷新)。

登錄功能是用PHP編寫的。

這是我要修改的示例代碼,非常感謝。

function() { 
    if (<?php echo $is_loggedin ?>) {

          document.location.reload(true);

      }

我使用圖片而不是按鈕進行登錄。 此功能位於彈出頁面上。

$(function(){

        $('#login_onclick').click(function(){
            $('#login_form').submit();
        });

    });

嘗試使用:

window.opener.location.reload();

並將其綁定到子窗口的登錄提交。

因此,使用jQuery在子窗口內嘗試:

$(function(){
    $('#login_onclick').click(function(){
        $('#login_form').submit();
        window.opener.location.reload(); // Sorry for the mongrel JS/jQuery mix.
    });
});

有關開啟器的更多信息:

https://developer.mozilla.org/en-US/docs/DOM/window.opener

在登錄彈出頁面上使用此腳本(在登錄“ susses”內部)

<script> window.top.location.reload(); </script>

僅使用JavaScript並不能解決問題。 我嘗試了。謝謝您的所有投入。

我最終通過在JQuery中使用AJAX方法使其工作。 請告訴我是否可以改善我的方法。 再次感謝。

編寫另一個登錄ajax調用:

function user_settings(){

       $.ajax({
              async: false,
              dataType: 'json',
              type:'post',
              url: 'validation/login',

              success: function (j) {

                login = j.ok;
                if (login){
                location.reload();
                }
              }
       })
})

關閉彈出窗口時將調用此函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM