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

How do I close a popup window, and open the next page in the main window in ROR?

提问人: 提问时间:8/30/2008 最后编辑:Jason Plank 更新时间:11/25/2014 访问量:2489

问:

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

我想我可以使用以下命令在正确的窗口中打开报告

{ :target => <name of window> }

但我不知道如何确定或设置原始窗口的名称。form_tag

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

HTML Ruby-on-Rails 红宝石

评论


答:

0赞 Craig 8/30/2008 #1

这对初学者来说怎么样?

# The submit button in your child window's view:
<%= button_to_function 'Save', "$('my_form').submit(); window.opener.location.reload(); window.close();" %> 
0赞 Brent 8/31/2008 #2

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

<%= submit_tag "Go!", {:onClick => "window.close()"} %>
2赞 Steropes 10/2/2008 #3

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

您必须使用 javascript 或 Ajax 来重定向旧页面,

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

然后关闭旧窗口。

window.close();

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

0赞 praveenjayapal 1/15/2009 #4

试试这个:

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

它将关闭当前窗口,并将您带到父窗口中的下一页。