存储网址,然后存储,加载不同的网址?

时间:2012-02-14 19:47:42

标签: javascript jquery redirect

我基本上需要重定向,但我的问题是第一个url必须存储,否则其他页面将无法显示。

如何获取jquery或javascript来存储当前(或指定的)url,然后一旦存储它必须加载不同的(指定的)url?

2 个答案:

答案 0 :(得分:2)

您不能简单地将其存储在变量中,因为在加载新URL时,整个javascript上下文都是新的。但是,您可以将当前URL存储在cookie中。

如果您尝试将网址从一个网页传递到下一个网页,则Cookie方法仅在两个网页位于同一网域时才有效。

如果你的堆栈中有任何类型的服务器端组件(例如PHP),那么存储URL服务器端似乎是一种更明智的方法。

编辑添加:您请求了Cookie的示例代码。在Javascript中读取和编写cookie需要一定量的样板代码;有example methods here或您可以使用a jQuery plugin

一旦你有一个简单的方法来编写和读取你的cookie,你就可以这样做(这个语法使用jquery插件)

//assuming "newURL" hold the new url you want to load
$.cookie("currentURL",window.location.href);
window.location = newURL;

然后在下一页上,您可以获取旧网址:

var oldURL = $.cookie("currentURL");

答案 1 :(得分:0)

要使用像JavaScript / jQuery这样的客户端脚本执行此操作,您需要使用AJAX。您使用要存储的URL向服务器发送请求,如果需要,您可以返回重定向到的URL。从服务器收到响应后,您将重定向到目标URL。

但请注意,使用 JavaScript / jQuery无法做到这一点。您还需要服务器端脚本来处理存储URL的请求。像PHP,Perl等。你可能还需要一个数据库或至少一个平面文本文件来存储数据。

您可能需要考虑完全服务器端方法。使用服务器上的脚本读取和存储URL,然后将请求路由到正确的目标。这将为用户提供更快,更无缝的体验,并为您构建和维护更少的东西。