Javascript ui上的状态持久性

Javascript ui上的状态持久性,javascript,jquery,html,jsp,Javascript,Jquery,Html,Jsp,我在这里发布我的问题陈述 用户从下拉列表中选择选项。选定值显示在第页上。但是,当用户刷新页面时,所选值将从页面中消失 我需要该值应该是我刷新页面之前选择的值。 使用js/jquery是否可以做到这一点 请指导我如何才能做到这一点 关于您在这里有几个选项: 您可以使用jQuery设置cookie,它保存以前的状态。在这里可以找到一个不错的教程: 您还可以使用查询字符串对url中的选项进行编码。有关这方面的一些信息可以在维基百科上找到: 两个选项中的哪一个取决于您,如果您希望设置保持不变,那么coo

我在这里发布我的问题陈述

用户从下拉列表中选择选项。选定值显示在第页上。但是,当用户刷新页面时,所选值将从页面中消失

我需要该值应该是我刷新页面之前选择的值。 使用js/jquery是否可以做到这一点

请指导我如何才能做到这一点


关于

您在这里有几个选项:

您可以使用jQuery设置cookie,它保存以前的状态。在这里可以找到一个不错的教程:

您还可以使用查询字符串对url中的选项进行编码。有关这方面的一些信息可以在维基百科上找到:


两个选项中的哪一个取决于您,如果您希望设置保持不变,那么cookie就是一种方法。如果用户离开页面并再次访问,则查询字符串对于防止刷新清除您的设置更为有用。

使用cookie插件http://plugins.jquery.com/project/Cookie:

$("#MyList").change(function() {
    //Set a cookie with selected value on change.
    $.cookie("SelectedItem", $(this).val());
});

$(document).load(function() {
    //On load, set the selected item from the cookie.
    $("#MyList").val($.cookie("example")); 
});

您有几种解决方案可以做到这一点

每次用户选择一个选项时,都会使用所选选项向服务器发送http请求。当用户刷新页面时,jsp将使用收集的信息预先选择选项。jQuery中的一个通用$.get将在客户端完成这一任务。 使用所选选项设置cookie。刷新页面时,获取cookie值并使用它预先选择选项。您不需要jQuery来完成这项工作,但它可能会有所帮助。 如果浏览器支持,请使用localStorage而不是Cookie。这是一个仅客户端的解决方案,因此信息不会发送到服务器。 设置URL的哈希以存储选项:

location.replaceoption=+val

使用location.hash刷新页面时,可以检索该值


你的站点是否有服务器端组件?如果有,这可能是一个更好的地方来保存它?@Paddy,这可能有点重,不是吗?您会推荐像setup这样的帐户吗?您可以使用localStorage或sessionStorage@DZittersteyn-只是个问题。如果已经有一个服务器端方法,那么它可能更合适,但如果没有,那么cookies等就是您得到的。@Pramod sessionStorage适合我!谢谢谢谢你的回复!如果未启用cookie,您的解决方案将失败。这是正确的,但这就是为什么很难在客户端保留内容的原因。。。