跳转到其他链接时,请在文本字段中保留输入

时间:2017-07-24 08:48:44

标签: javascript html html5

解释我的意思:

  1. 转到https://github.com/torvalds/linux
  2. 在顶部的搜索框中输入内容
  3. 点击其他标签(例如"拉请求")
  4. 地址栏中的网址会更改,但搜索框中的文字会保持不变
  5. 但是,如果我在浏览器地址栏中手动输入4中的地址,则文本将被清除。第一个行为是如何实现的?

2 个答案:

答案 0 :(得分:1)

搜索栏包含在标题中,该标题在应用程序的所有页面中都是通用的。

因此,当您切换标签时,标题下方的内容会发生变化。这是大多数单页面应用程序的工作方式。因此,搜索栏中的文本将被保留。

当您手动更改地址栏中的地址时,您将强制再次加载页面。因此,标题也会再次呈现,文本也会更改。

为了实现这一目标,您需要使用模板使所有页面的标题相同。

答案 1 :(得分:0)

可能的解决方案是将文本输入保存到localStorage。

在像Angular这样的单页面应用程序框架中,您可以使用服务在整个应用程序中存储值。但在这种情况下,在重新加载硬浏览器后,该值也会消失。