Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.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_Html - Fatal编程技术网

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

Javascript 跳转到其他链接时,将输入保留在文本字段中,javascript,html,Javascript,Html,为了解释我的意思: 去 在顶部的搜索框中键入内容 单击另一个选项卡(例如,“拉取请求”) 地址栏中的URL更改,但搜索框中的文本保持不变 但是,如果我在浏览器地址栏的4中手动输入地址,文本将被清除。第一个行为是如何实现的?搜索栏包含在一个标题中,该标题在应用程序的所有页面中都很常见 因此,当您切换选项卡时,只有标题下的内容发生更改。这是大多数单页应用程序的工作方式。因此,搜索栏中的文本将被保留 当您手动更改地址栏中的地址时,您将再次强制加载页面。因此,标题也会再次呈现,文本也会更改 为了实现这一

为了解释我的意思:

  • 在顶部的搜索框中键入内容
  • 单击另一个选项卡(例如,“拉取请求”)
  • 地址栏中的URL更改,但搜索框中的文本保持不变

  • 但是,如果我在浏览器地址栏的4中手动输入地址,文本将被清除。第一个行为是如何实现的?

    搜索栏包含在一个标题中,该标题在应用程序的所有页面中都很常见

    因此,当您切换选项卡时,只有标题下的内容发生更改。这是大多数单页应用程序的工作方式。因此,搜索栏中的文本将被保留

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


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

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


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

    但当我单击选项卡时,它是否也会转到另一个URL的新页面?标题不也是(新页面的)新标题吗?不。它看起来像一个新的页面和新的URL,但在单页面应用的术语中,它被称为新路由。请搜索网页,了解更多关于单页应用程序的架构和工作原理,你会得到更好的想法。那些没有解释我做错了什么就投了反对票的人,你根本没有帮助社区。我是网络开发新手,我看不出你所做的除了增加障碍之外还有什么好处。