【发布时间】:2010-09-07 08:31:44
【问题描述】:
我有一个弹出窗口,其中包含一个为报告收集数据的表单。 当我在该窗口中单击提交时,我希望它关闭弹出窗口,并在调用弹出窗口的原始窗口中打开报告。
我想我可以通过使用在正确的窗口中打开报告
{ :target => <name of window> }
在form_tag,但不知道如何确定或设置原始窗口的名称。
我也不知道怎么关闭弹窗。
【问题讨论】:
标签: html ruby-on-rails ruby
我有一个弹出窗口,其中包含一个为报告收集数据的表单。 当我在该窗口中单击提交时,我希望它关闭弹出窗口,并在调用弹出窗口的原始窗口中打开报告。
我想我可以通过使用在正确的窗口中打开报告
{ :target => <name of window> }
在form_tag,但不知道如何确定或设置原始窗口的名称。
我也不知道怎么关闭弹窗。
【问题讨论】:
标签: html ruby-on-rails ruby
:target => 将 html 属性目标添加到链接。这会打开一个新窗口并将新窗口命名为目标。
您必须使用 javascript 或 Ajax 来重定向旧页面,
window.opener.location.href="http://new_url";
然后关闭旧窗口。
window.close();
这可以通过 rjs 文件或直接在 javascript 中完成。
【讨论】:
可以使用onClick html事件关闭弹窗,如下:
<%= submit_tag "Go!", {:onClick => "window.close()"} %>
【讨论】:
试试这个:
function fclosepopup(){
window.opener.location.replace="URL";
window.close();
}
它将关闭当前窗口并带您进入父窗口中的下一页。
【讨论】:
this 对于初学者来说怎么样?
# The submit button in your child window's view:
<%= button_to_function 'Save', "$('my_form').submit(); window.opener.location.reload(); window.close();" %>
【讨论】: