Как мне установить имя окна в ROR?
-
09-06-2019 - |
Вопрос
Как мне " name " окно браузера в ROR, так что я могу открыть страницу в нем позже из другого (всплывающего) окна (используя target = " name " html параметр)
Решение
Для этого вы должны использовать 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' %>
Другие советы
Вы можете попробовать ниже:
var x=window.open("", "myWindow");
var y="<head><title>my window</title></head><body>my window</body>";
x.document.write(y);
Не связан с StackOverflow