Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在刷新时维护表单元素状态_Javascript_Jquery_Html_Session_Cookies - Fatal编程技术网

Javascript 在刷新时维护表单元素状态

Javascript 在刷新时维护表单元素状态,javascript,jquery,html,session,cookies,Javascript,Jquery,Html,Session,Cookies,这个问题可能已经有了一些答案……或者在同一条线上 我有一个html表单复选框元素,默认情况下它是未选中的,页面加载 单击时,我使用Jquery将其属性更改为checked或unchecked,以便其他函数也可以运行 问题是如何保持这种状态,在刷新浏览器时检查或取消检查。我希望它保留先前或上次选择的值。试图避免使用cookie。您应该将值存储在cookie中。 这一切都会自动完成 如果您不想使用cookie,可以使用HTML5本地存储。如果您不想使用cookie(fair imo),通过ajax自

这个问题可能已经有了一些答案……或者在同一条线上

我有一个html表单复选框元素,默认情况下它是未选中的,页面加载

单击时,我使用Jquery将其属性更改为checked或unchecked,以便其他函数也可以运行


问题是如何保持这种状态,在刷新浏览器时检查或取消检查。我希望它保留先前或上次选择的值。试图避免使用cookie。

您应该将值存储在cookie中。
这一切都会自动完成


如果您不想使用cookie,可以使用HTML5本地存储。

如果您不想使用cookie(fair imo),通过ajax自动保存更改是您的最佳选择。它保留与该用户/会话/实例/数据库记录相关的复选框的状态。虽然cookie只是漂浮在以太中(与会话/实例/数据库记录/系统用户无关(仅与浏览器用户相关))

这里有一个HTML 5存储jQuery插件,用于表单状态->

这是您的服务器端语言?当您说“浏览器刷新”时,您的意思是页面已经通过重新加载按钮重新加载了吗(或菜单选项,或其他)?@rahul PHP是我的服务器端language@Pointy页面已通过“重新加载”按钮重新加载。为什么要尝试避免使用cookie?除了会话值,还有cookie…您有一个包含数百个字段的表单,并且您的浏览器会被刷新,通常这种状态是“继续会话”而不是“cookie”。jQuery能否检测到重新加载,然后获取状态并通过到dom?否。jQuery纯粹是客户端,不知道服务器端会话。您可以在服务器上执行此操作。(并使用AJAX自动保存值)结论是,在刷新时维护客户端值有很多选择:cookie、会话值、html5本地存储,所有这些都应该通过ajax调用进行更改。谢谢All@Codex:Session也使用cookies。您能对此进行一些扩展吗。类似于$(“:checkbox”).onchange($.ajax('checkbox/save/'),$(此).val(),function(){});试图理解它..你建议每个会话在数据库中保留所有用户选择状态的记录?据我所知,有三种方式:cookie、session、db(除非使用新的html5标记之一)。