成功提交后关闭表单Rails 3

时间:2011-05-25 06:28:10

标签: ruby-on-rails-3

我在rails 3 app中有一个用于创建新标签的表单。此页面在新窗口中打开,我希望在成功提交新标记后关闭该窗口。我应该怎么做呢。

我尝试<%= f.submit "Create Tag", :onclick => "window.close()" %>并且没有用 - 它仍然继续进行重定向。

如何重定向到关闭窗口的javascript文件?


这里我尝试重定向到另一个html页面,但是当我使用rails时它仍然没有关闭,即使它只是在我手动加载它时也能正常工作。

> <!DOCTYPE html> <html>   <head>
>     <meta http-equiv="Content-type" content="text/html; charset=utf-8">  
> </head>
> 
>   <body id="sample"
> onload="window.close()">
>     This page was meant to close itself immediately using javascript.
> If it has not, please close it
> manually.   </body> </html>

2 个答案:

答案 0 :(得分:3)

您可以使用控制器中的render :text => '<script type="text/javascript"> window.close() </script>关闭窗口。

替代解决方案可以是render :action => "window_closer",其中windows_closer.html.erb是具有相同代码的HTML文件(可能是正文和“请立即关闭窗口”文本)。

答案 1 :(得分:1)

我在这个论坛上使用了最好的答案,它似乎有用......我不太清楚为什么。

http://www.google.com/support/forum/p/Chrome/thread?tid=23c03746e3aa03f9&hl=en

window.open('', '_self', '');
window.close();