如何关闭弹出窗口,并在ROR的主窗口中打开下一页?

时间:2020-03-05 18:45:28  来源:igfitidea点击:

我有一个弹出窗口,其中包含用于收集报告数据的表单。
当我在该窗口中单击"提交"时,我希望它关闭弹出窗口,并在称为弹出窗口的原始窗口中打开报表。

我想我可以通过使用在正确的窗口中打开报告

{ :target => <name of window> }

在" form_tag"中,但是我不知道如何确定或者设置原始窗口的名称。

我也不知道如何关闭弹出窗口。

解决方案

回答

对于初学者来说怎么样?

# The submit button in your child window's view:
<%= button_to_function 'Save', "$('my_form').submit(); window.opener.location.reload(); window.close();" %>

回答

可以使用onClick html事件关闭弹出窗口,如下所示:

<%= submit_tag "Go!", {:onClick => "window.close()"} %>

回答

:target =>将html属性target添加到链接。这将打开一个新窗口,并将新窗口命名为目标。

我们必须使用javascript或者Ajax来重定向旧页面,

window.opener.location.href="http://new_url";

然后关闭旧窗口。

window.close();

这可以通过rjs文件或者直接在javascript中完成。

回答

试试这个:

function fclosepopup(){
window.opener.location.replace="URL";
window.close();
}

它将关闭当前窗口,并带我们进入父窗口的下一页。