- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望在不重新加载的情况下删除一定数量的页面 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/
我是一名优秀的程序员,十分优秀!