0

I have two pages and when a used clicks a button in the first one i make an ajax request and redirect to the second page using the following method.

window.location.href="newpage.php";

Now my intention is to use the result of the ajax request into this second page. But it seems when the second page is loaded all the json data from the ajax request is lost. Is there anyway to accomplish this?

4

3 回答 3

3

像 Jamie Taylor 一样伤心,如果您要切换页面,请不要使用 AJAX。

无论您使用 AJAX 请求的文件中的代码做什么,都将该代码移至newpage.php.

于 2013-07-28T17:49:25.210 回答
2

获取 JSON 数据后,使用 cookie 或 HTML5 本地存储来保存它。然后,数据将随时从用户的浏览器中可用。一个 cookie 可以容纳大约 4KB(虽然我不确定这是否取决于浏览器)所以如果你保存非常少量的 JSON 可能就足够了。否则,您应该使用本地存储。如果我没记错的话,你可以保证至少有 2.5 MB 的数据(在 Chrome 中)。其他浏览器可能会给你更多(阅读更多)。

查看jQuery localStorage 插件以轻松使用本地存储 API。

于 2013-07-28T17:48:27.407 回答
1

i URL 的长度是有限的。根据您的 json 数据,使用“window.location.href”可能会导致错误。

@see不同浏览器中 URL 的最大长度是多少?

您应该尝试创建一个 <form method='POST' id="yourFormId"> 对象并使用您需要的数据填充表单字段:

<input type="hidden" id="jsondata" name="jsondata" value="myJsonString">

然后您可以使用带有“document.getElementById('yourFormId').submit()”的javascript触发重定向

于 2013-07-28T17:41:29.540 回答