JavaScript 中重定向到相对的 URL

Shiv Yadav 2024年2月15日
JavaScript 中重定向到相对的 URL

在你的网站上,你可能需要经常重定向页面。虽然建议从服务器端转网页和 URL,但在某些情况下,你可能需要使用 JavaScript 从客户端重定向页面。

我们将在本教程中了解如何使用 JavaScript 进行转换。

在 JavaScript 中重定向到相对 URL

尽管大多数 JavaScript 库(例如 jQuery)都具有重定向网页的预制函数,但使用纯 JavaScript 总是更直接。有两种 JavaScript 重定向方法。

考虑你希望重新路由到 www.newwebsite.com/new-location 的场景。在这种情况下,你可以在网页的 JS 代码中包含以下命令之一。

语法:

window.location.replace("/url or path"); //or

window.location.href = "/url or path";

重定向首先不会将记录添加到浏览器的历史记录中。但是,类似于从你的网站单击另一个 URL,将在第二个实例中添加描述。

例子:

<!DOCTYPE html>
<html>
  <head>
    <script>
      function nUrl() {
        window.location.href = "b.html";
      }
    </script>
  </head>

  <body>
    <input type="button" value="Redirect page" onclick="nUrl()" />
  </body>
</html>

注意:确保你提供的相对路径是绝对的。你应该有另一个页面保存为 b.html

输出:

JavaScript 重定向相对 URL

当你单击重定向页面按钮时,页面链接将被重定向,如下所示:

JavaScript 重定向页面

请注意以下事项:

  • JavaScript 不能用于从 HTTPS 网页重定向到 HTTP 网站。大多数浏览器不会让你这样做。

    你可以使用 JavaScript 从 HTTP 重定向到 HTTP、HTTP 到 HTTPS 和 HTTPS 仅重定向到 HTTPS 页面。你必须使用从 HTTPS 到 HTTP 网站的服务器端重定向。

  • 你可以使用绝对路径(如 /new-location)或完整的 URL(如 http://www.newwebsite.com/new-location)。如果你指定重定向的相对路径,浏览器将使用相同的 HTTP/HTTPS 协议重新路由到网站,而无需修改它。

    最好提供整个 URL 以从 HTTP 重定向到 HTTPS 页面。

  • 如果你将重定向放在 Submit 按钮的函数处理程序中,它可能不起作用,因为浏览器将提交表单而不是重新路由页面。在这些情况下,你可以使用 AJAX 提交表单,然后根据按钮的回答进行重定向。

作者: Shiv Yadav
Shiv Yadav avatar Shiv Yadav avatar

Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.

LinkedIn

相关文章 - JavaScript Redirect