4

如何在 ROR 中“命名”一个浏览器窗口,以便稍后从另一个(弹出)窗口中打开一个页面(使用 target="name" html 参数)

4

2 回答 2

5

为此,您必须使用 JavaScript:

<script type="text/javascript">
  window.name = "MyWindow";
</script>

当然,您可以轻松地将其打包到 Rails 辅助方法中。例如,在app/helpers/application_helper.rb添加一个新方法:

def window_name(name)
  content_for(:window_name) do
    "<script type=\"text/javascript\">window.name = \"#{name}\";</script>"
  end
end

接下来,在您的布局文件中,将此行添加到 HTML<head>元素中的某处:

<%= yield :window_name %>

最后,在您的视图模板中,只需添加这样的一行(可以是您想要的任何位置)即可输出正确的 JavaScript:

<% window_name 'MyWindow' %>
于 2008-08-30T16:55:17.993 回答
0

你可以试试下面:

var x=window.open("", "myWindow");
var y="<head><title>my window</title></head><body>my window</body>";
x.document.write(y);
于 2015-06-05T11:30:32.293 回答