如何在 Javascript 重定向中保留 URL 参数?

Posted

技术标签:

【中文标题】如何在 Javascript 重定向中保留 URL 参数?【英文标题】:How to keep URL parameters on Javascript redirect? 【发布时间】:2011-12-24 17:49:02 【问题描述】:

单击电子邮件中的动态链接后,我的用户会进入一个预先填充了如下表单的页面:

http://www.test.com/november_promo/default.html?Name=Test&Email=Test.com

一个脚本会在开头运行,将它们重定向到页面的移动版本:

<script type="text/javascript" src="redirection_mobile.min.js"></script>
<script type="text/javascript">
SA.redirection_mobile (param:"isDefault", mobile_url: "www.test.com/november_promo/default_mobile.html", mobile_prefix : "http://", cookie_hours : "1" );
</script>

当这些参数被这样重定向时,有什么方法可以保留这些参数?

我知道使用 php 进行移动重定向有更好的方法,但我公司的服务器对于让我部门的目录服务 PHP 文件的做法很粗略,所以我们尝试使用 Javascript 来做所有事情。

【问题讨论】:

【参考方案1】:
document.location.search

可用于将当前位置查询字符串附加到 javascript 中的字符串

例如

<script>
var uri = 'foobar.html';

// while current location is 'baz.html?foo=1&a=b' for example

uri = uri + document.location.search;

// this will output 'foobar.html?foo=1&a=b'    
alert(uri);

</script>

【讨论】:

以上是关于如何在 Javascript 重定向中保留 URL 参数?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用动态 URL 进行 301 重定向并为新 URL 保留一些价值

如何仅通过更改域名来重定向 URL,同时保留其他 URL 参数

重定向到新的外部 url 时如何保留 localStorage [重复]

提交后保留$ _POST数据,同时删除重定向URL中的index.php

如何在不重新加载页面的情况下将服务器端重定向到其他页面并仍将 URL 保留在 Nextjs 应用程序中?

.htaccess:将根URL重定向到子目录,但保留根URL