从服务器重新加载 Javascript 页面 (2021)

Posted

技术标签:

【中文标题】从服务器重新加载 Javascript 页面 (2021)【英文标题】:Javascript reload page from server (2021) 【发布时间】:2021-07-19 07:36:22 【问题描述】:

我用 javascript 设置了一个 cookie。我有一个输入类型复选框,它将网站上的主题从普通版本切换到经典版本,cookie 名称也是如此。我的后端是 php。我想在使用 PHP 单击复选框时访问新更改的值,所以自然我想重新加载页面,以便 PHP 可以获取新值。问题来了,所有的建议都表明了这一点:

location.reload(true);

但我的 Visual Studio 代码说这已被弃用,事实上,它确实不起作用。

我检查了 MDN - [https://developer.mozilla.org/en-US/docs/Web/API/Location/reload][1] 它说我不应该传递任何参数而只是使用

location.reload(); 

是的,使用它会重新加载页面,但似乎它不会通过从服务器请求页面来重新加载它,因为我的 PHP 没有获取新值。只有当我手动点击刷新按钮时,它才会这样做。 MDN 说“Location.reload() 方法重新加载当前 URL,就像刷新按钮一样。”这似乎不是真的。

那么我可以在这里做什么?

【问题讨论】:

如果在弃用之前我真的很感兴趣 location.reload(true);是我需要的东西,如果是的话,肯定有其他选择。我非常清楚客户端/服务器端之间的区别。我也不认为ajax会帮助我。我想重新加载整个页面并获得新主题。很多都取决于此。 你可能想检查这个可能的重复项,因为你想强制重新加载,现在不推荐使用该标志:***.com/questions/55127650/… 【参考方案1】:

您可以尝试使用以下方法从 php 重新加载页面:

header("Location: *your directory*");

如果您设置了与您相同的页面,它将重新加载。

【讨论】:

以上是关于从服务器重新加载 Javascript 页面 (2021)的主要内容,如果未能解决你的问题,请参考以下文章

从 javascript POST 重新加载剃须刀页面

在Javascript中设置属性后重新加载页面

在Angular Js中重新加载后,如何将复选框(选中或未选中)从javascript控制器更新到html页面?

我如何获得一个页面来从数据库(如facebook)中重新加载所有用户的帖子

Javascript/JQuery 直到页面重新加载后才工作

Javascript 重新加载页面