1

我的 rails 应用程序被称为submission 我在我的代码中使用这一行来重定向到我的应用程序索引页面:

window.location = "/"

它正在工作,因为我的索引页是http://localhost:3000/

但是在我将我的应用程序部署到tomcat之后,

url 更改,索引页面变为:http://localhost:8080/submission/

所以 jquery 代码总是将我重定向到http://localhost:8080/哪个是 tomcat 索引页面而不是应用程序索引页面。

为了重定向到正确的索引页面,我需要在 jquery 代码中进行哪些更改?

ps 我不想将代码更改为,window.location = "/submission"因为有时应用程序名称可能会更改。

4

2 回答 2

2

您必须将应用程序根输出到页面上的标签,以便您可以通过 JS/jQuery 查询它。您可以在页面上有一个元标记

<meta name='app_root' content='/submission'/>

然后有类似的东西

window.location = $('meta[name="app_root"]').attr('content');
于 2013-03-21T18:45:43.583 回答
2

我没试过,但你不能用window.location = "<%=root_url%>";吗?

编辑

显然,这仅适用于.erb动态文件,而不适用于静态文件。要在静态文件中使用它,请在布局中设置一个全局变量来设置上下文/根。

<script>var root_url = "<%=root_url%>"</script>

一旦你初始化了它,你就可以在任何你想要的地方使用它。

于 2013-03-21T18:49:26.537 回答