在Javascript中重定向时总是重新加载页面

Always reload page on redirect in Javascript

本文关键字:加载 新加载 Javascript 重定向      更新时间:2023-12-06

我有一个表单,可以从网站的任何页面调用和提交。位于网站导航栏中的触发器按钮将以类似模式的UI显示表单,并通过AJAX调用处理提交操作。如果POST成功返回,它将包含一个Location标头,其中包含接下来需要显示的页面的URL。

重定向到此返回的位置时,我需要浏览器始终重新加载页面。如果我简单地执行window.location = xdr.getResponseHeader('Location'),并且当前URL减去哈希片段与新URL减去哈希碎片相同,则页面不会重新加载(至少我在Chrome中看到了这种行为)。

对返回的URL进行简短的手动解析,并与当前页面URL进行比较,以判断何时调用reload(),何时简单地重新分配window.location,是否有更直接的方法来实现所需的页面重新加载行为?

如前所述,我认为您应该只执行传统的表单提交,而不是Ajax。然后处理重定向服务器端,即使是回发,也应该始终强制页面加载。