Redirect to Another Page Using JavaScript

Pieter E.

The Problem

You need to redirect a user to another page using JavaScript and the DOM. The redirect might even need to be conditional, like after you made an API call to add a user to a mailing list and the user was successfully added.

if (api.response.success) { // Need some way to take the user to a new page here } else { // Show API response error message }

Generally, an HTTP response is the best option for redirecting, with HTML <meta> elements being the second-best option, but perhaps neither are available to you, or they don’t fit into the user experience you are trying to create.

The Solution

Navigating to a new page can be done using window.location.assign().

if (api.response.success) { // Redirect to success page window.location.assign("https://yourdomain.com/success"); } else { // Show API response error message }

By using assign(), the user will be able to get back to the landing page using the “back” button, as this does not change the browser’s history.

An alternative solution, which will replace the current page in the browser history just like HTTP redirects, is to use window.location.replace().

if (api.response.success) { // Redirect to success page window.location.replace("https://yourdomain.com/success"); } else { // Show API response error message }

This solution may not be ideal for something like a mailing list landing page, or any page where it’s important to preserve the “back” button’s behavior, as this will replace the user’s history. To preseve the “back” button behavior, rather use assign().

Further Reading

Get Started With Sentry

Get actionable, code-level insights to resolve JavaScript performance bottlenecks and errors.

  1. Create a free Sentry account

  2. Create a JavaScript project and note your DSN

  3. Grab the Sentry JavaScript SDK

<script src="https://browser.sentry-cdn.com/7.111.0/bundle.min.js"></script>
  1. Configure your DSN
Sentry.init({ dsn: 'https://<key>@sentry.io/<project>' });

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.