gpt4 book ai didi

javascript - 如何在不重新加载页面的情况下更改 URL? - 有一点扭转

转载 作者:行者123 更新时间:2023-11-28 00:53:35 24 4
gpt4 key购买 nike

我希望在不重新加载的情况下删除一定数量的页面 URL。

我在 StackOverflow 上寻找答案,有一些接近的答案,但不是我真正想要的。

我不想使用哈希函数,如果可能的话,避免使用 HTML5 版本,因为 HTML5 还不是批准的标准,对于将要使用它的网站,我一点也不感到惊讶的客户使用 IE6。

如果它不是一个包含 400 行代码的极其复杂的解决方案,我会更喜欢(老实说,为此我宁愿重新加载页面)。

我忘了提及这个问题的关键部分

The user is directed from a different page with this string via PHP. So for example:

user submits a form with errors. Let's say the form is on /myform.php

The user gets headed to /index.php?string

照常进行

我有:

这是一个示例 URL,我希望在不重新加载的情况下进行编辑:

http://www.mywebsite.com/index.php?string

等等! ?string 在/index.php 上有用途

index.php 将使用 $_GET['string'];并向用户显示一条消息

我使用 JQuery 在 4 秒后删除消息,如下所示:

<div id="pagemsg"><?php echo $string; ?></div>

<script language="javascript">
setTimeout( "$('#pagemsg').fadeOut();", 4000);
</script>

这一切正常,消息在 4 秒后消失。不过我留下了这个网址:

http://www.mywebsite.com/index.php?string

我不再需要这个字符串,因为 ?string 已经完成了它的工作!

我想删除 ?string 而不重新加载 while 页面。

有什么解决方案可以帮助我吗?

另外,

我不介意是否必须使用 HTML5 推送功能,但对于不支持 HTML5 的浏览器是否有后备解决方案?

为什么我在标题中添加了WITH A TWIST?嗯,我的要求与我迄今为止看到的问题不同。如果我错了请纠正我,我会改变它。

提前感谢您的帮助!

最佳答案

简单的答案是否定的。这就是他们添加 pushState 的原因。

但是,您似乎正在尝试完成一个相当常见的场景,称为闪存消息传送。这通常是使用用户 session 存储一条消息来完成的,以便在下一个请求时显示(然后将其删除)。

示例:

function doImportStuff() {
// ...
$_SESSION['message'] = 'important stuff was done';
// ...
}

function showBoringPage() {
// ...
if (isset($_SESSION['message']) {
echo '<b>' . $_SESSION['message'] . '</b>';
unset($_SESSION['message']);
}
// ...
}

关于javascript - 如何在不重新加载页面的情况下更改 URL? - 有一点扭转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26495802/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com