在ui上状态持久性
state persistence on ui
这里我发布了我的问题声明。
用户从下拉菜单中选择选项。所选值显示在页面上。但是,当用户刷新页面时,所选的值就会从页面中消失。
我需要该值应该是我在刷新页面之前选择的值。使用js/jquery可以做到这一点吗。
请指导我如何做到这一点!
问候
您有几种解决方案可以做到这一点。
- 每次用户选择一个选项时,都会向具有所选选项的服务器发送http请求。当用户刷新页面时,jsp将使用收集到的信息来预先选择该选项。jQuery中一个常见的
$.get
将在客户端完成任务 - 使用所选选项设置cookie。刷新页面时,获取cookie值并使用它预先选择该选项。您不需要jQuery来执行此操作,但它可能会有所帮助
- 如果浏览器支持,请使用
localStorage
而不是cookie。这是一个仅客户端的解决方案,因此信息不会发送到服务器 -
设置URL的哈希以存储选项:
location.replace("#option=" + val);
您可以在使用
location.hash
刷新页面时检索该值。
这里有几个选项:
您可以使用保存先前状态的jQuery设置cookie。一个很好的教程可以在这里找到:http://www.electrictoolbox.com/jquery-cookies/
您还可以使用查询字符串对url中的选项进行编码。有关这方面的一些信息可以在维基百科上找到:http://en.wikipedia.org/wiki/Query_string
你想要这两个选项中的哪一个取决于你,如果你想让设置保持不变,可以使用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"));
});
相关文章:
- 事件和状态
- 获取选择框的状态
- 相位器状态未捕获参考错误
- 如何更改reactjs中外部/独立组件的状态或属性
- 如何使用密码检测网络中的状态连接
- Ember.js-接口状态应该存储在哪里
- 混合 ui-sref 和 $state.go 在 Angular ui-router 中进行状态转换
- 在Angular 2中布线期间保持零部件处于活动状态
- 在mvc应用程序中,在回发时保留最初隐藏的文本框的隐藏或可见状态
- NEDB在Electron应用程序中的持久性
- XMLHttpRequest未返回值-状态202
- 使用javascript反复检查用户在facebook上的登录状态
- 如何使bxslider仅在移动视图中处于活动状态
- 获取ASP.NET Ajax Timer状态
- React redux初始化功能,无论状态变化如何
- 无法在现有状态转换期间更新-未使用任何非法的setState()
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- 在ui上状态持久性
- 如何在禁用 JavaScript 的情况下维护下拉列表的持久性状态 - PHP
- 剑道 UI 网格和状态持久性