我在我的应用上使用条纹,在有人输入他们的信息后,我希望页面重定向以便他们编辑他们的个人资料,edit_user_path(current_user)
如何在几秒钟后触发重定向到该页面?
我正在考虑下面的javascript但是如何将URL设为用户编辑路径?
<script>
$(document).ready(function () {
// Handler for .ready() called.
window.setTimeout(function () {
location.href = "https://www.google.co.in";
}, 5000);
});
</script>
答案 0 :(得分:1)
在服务器端渲染视图时,需要将edit_user_path(current_user)
从ruby上下文导出到javascript上下文。
有几种方法可以将数据从ruby导出到javascript。其中一种方法是使用javascript_tag
,您可以按如下方式分配给javascript变量(仅作为示例):
<%= javascript_tag do %>
window.edit_current_user_path = '<%= edit_user_path(current_user) %>'
<% end %>
然后你可以在你的javascript中使用该变量:
<script>
$(document).ready(function () {
// Handler for .ready() called.
window.setTimeout(function () {
location.href = window.edit_current_user_path;
}, 5000);
});
</script>
有关详细信息,请参阅JavaScriptHelper#javascript_tag:
答案 1 :(得分:0)
你可以在rails中创建一个带有data属性的隐藏元素。然后从jquery读取该标记。
<div class='thing' data-thing='<%=edit_user_path(current_user)%>' style='display:none;'></div>
$(document).ready(function () {
$('.thing').attr("data-thing"); //path
});