【问题标题】:Make checked checkboxes stay checked after coming back to the page返回页面后使选中的复选框保持选中状态
【发布时间】:2015-07-06 15:50:40
【问题描述】:

我有一页由 angularjs 使用$http.get 加载的项目。

在同一页面上,有类别复选框。例如,如果用户按下复选框 men,则 Angular 会在不重新加载页面的情况下获取属于 men 类别的项目。

此外,用户可以点击某个项目,他将进入该项目的详细信息页面。

问题是,当用户选中一个类别复选框,选择某个项目,进入详细信息页面并按下浏览器中的back 按钮时,所有复选框都未选中,他将看到所有项目,而不是他不久前过滤掉的那些。

我怎样才能“记住”他选中了哪些复选框?

【问题讨论】:

  • 你可以使用cookies。
  • 或者更好的是,使用本地存储来保存他们的状态

标签: javascript html angularjs checkbox


【解决方案1】:

我假设您当前将类别复选框状态存储在控制器中,这就是为什么当用户转到项目详细信息然后返回到项目列表时状态会丢失,因为控制器已重新加载。为了“记住”哪些复选框被选中,您需要创建一个服务,您将在其中存储复选框的状态。每次用户访问项目列表页面时,控制器都会从服务中读取最后一个状态并相应地初始化复选框。如果用户随后选择/取消选择一个或多个复选框,控制器将更新服务以便存储新状态。

【讨论】:

    猜你喜欢
    • 2020-09-16
    • 2014-08-29
    • 1970-01-01
    • 1970-01-01
    • 2011-03-11
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    • 2016-08-23
    相关资源
    最近更新 更多