如何从弹出窗口将主窗口重定向到URL?

时间:2010-09-30 13:50:43

标签: javascript popup

我有一个弹出窗口,里面有一个表单。在提交表单时,我希望重定向到特定页面,但是在父窗口上(不是在弹出窗口上)。

如何使用Javascript实现此目的?

After Application of Josh Idea

我正在调用一个javascript函数来提交表单,在这个javascript中,下面是提到的代码

所以这可以执行,因为我尝试使用它并且它不能按照我的需要工作

function instant_popup_post()
{
    var cid         = document.getElementById('product').value;
    var session_id  = document.getElementById('sessid').value;
    if(cid==30)
    {
        alert(document.getElementById('instantpop').onsubmit="opener.location.href = 'http://192.168.1.5/cppl11/bannerbuzznew/full_color_banner.php?&id=+cid+'&info_id=5&osCsid='+session_id;");
        document.instantpop.submit();   
    }
    else if(cid==31)
    {
        document.getElementById('instantpop').onsubmit="opener.location.href ='perforated_window_signs.php?&id='+cid+'&info_id=6&osCsid='+session_id;";
        document.instantpop.submit();   
    }
    else if(cid==32)
    {
        document.getElementById('instantpop').onsubmit="opener.location.href ='preprinted_stock_banner.php?&id='+cid+'&info_id=7&osCsid='+session_id;";
        document.instantpop.submit();
    }   
}

帮助

2 个答案:

答案 0 :(得分:4)

在弹出窗口中,您可以使用opener属性来引用父窗口...

opener.location.href = 'http://www.google.com';

您也可以在父窗口上调用函数...

opener.functionName();

当然,良好的旧same origin policy限制适用于此

答案 1 :(得分:0)

我会说使用showModalDialog,因此你将冻结父窗口,完成后,你可以将一个变量发送给父窗口并进行重定向:

主窗口:

function ShowModalForm()
{
    var urlToRedirect = window.showModalDialog('url');
    if (urlToRedirect) 
       window.location = urlToRedirect;
}

弹出窗口:

function buttonAcceptClicked()
{
    //Do stuff you need
    window.returnValue = "new url";
    window.close()
}

Here有很多相关信息。