2013-12-23 31 views
0

我有一个页面(说注册页面)中的文本框。在输入值后,如果我使用浏览器中的后退和前进按钮导航到其他页面,并再次返回到注册页面。我希望显示输入的文本框值。有没有办法做到这一点。希望有人能够帮助。在此先感谢...如何在导航到其他页面后保留文本框的值?

+3

想到Cookies,本地存储或服务器端变量,请选择适合的变量。 – adeneo

+0

[重新加载页面后如何保留变量的值/]的可能重复(http://stackoverflow.com/questions/16879985/how-to-retain-value-of-the-variable-after-the- page-is-reloaded) – Rikesh

+0

可能需要缓存或每个控件的会话变量,并且如果存在,则从它们加载值。类似地在提交表单之前将当前值保存到各个“缓存/会话变量” – dreamweiver

回答

0

保存到本地存储是一个有点危险,因为任何人都可以去控制台并键入: window.localStorage查看保存的值,对于域的所有用户。

例如,因此目前这个页面上,在localStorage的包含此:

Storage {login-prefs: "{"provider":"google","oauth_version":"","oauth_server":"","username":""}",  se:fkey: "c6f10e10979159fee3220954ec846d68,1387300621", wb:isparticipating: "{"1106914":{"t":1387805621703,"v":false}}"} 

假设文本值不包含个人信息, 你仍然需要在满足多个用户的问题同一台机器。

一种解决方案将是使用用户ID作为关键字,值作为textboxId的JSON表示:值

例如:

上window.befreunload事件,strore下所有文本框的值包含用户ID的键:

localStorage.setItem('user_123_form-values',JSON.stringify([{txbox1:'some text'},{txbox2:'some other text'}]));

获取值:

JSON。解析(localStorage的[“user_123_form值”])

这里展示本地存储的方式,但如果数据需要是安全的, 您将需要使用cookies小提琴:

http://jsfiddle.net/LLyB6/2/

0

JS变量永远都没有持续性,但也有解决此两种方式:

1.Cookies 2.Storage 时候,Cookies,但在所有的最古老的浏览器的支持,但他们可能非常难以操作且难以使用。最重要的是,您的浏览器会在每次页面载入时向服务器发送cookie,所以如果它只被JavaScript使用,那么效率非常低。

相反,你应该看看存储选项。

保存一个项目很简单,如localStorage.itemname = value;读取与localStorage.itemname一样简单,并且删除与文本delete localStorage.itemname

这些值跨页面加载保存,但未发送到服务器。

来自:

Javascript global variable does not persist when navigate to another page (which also uses same js file)

相关问题