web-dev-qa-db-fra.com

Redirection vers une URL relative en JavaScript

J'ai un problème: je veux rediriger via JavaScript vers un répertoire ci-dessus. Mon code:

location.href = (location.href).substr(0, (location.href).lastIndexOf('folder'));

L'URL ressemble à ceci:

example.com/path/folder/index.php?file=abc&test=123&lol=cool

La redirection affecte uniquement ceci:

example.com/path/&test=123&lol=cool

Mais je veux avoir ceci:

example.com/path/

Comment pourrais-je faire ça?

318
user199337

Vous pouvez faire une redirection relative:

window.location.href = '../'; //one level up

ou

window.location.href = '/path'; //relative to domain
610
Kobi

Si vous utilisez location.hostname, vous obtiendrez votre partie domain.com. Ensuite, location.pathname vous donnera/chemin/dossier. Je scindais location.pathname par/et réassemblais l'URL. Mais à moins que vous n'ayez besoin de la chaîne de requête, vous pouvez simplement rediriger vers .. pour accéder à un répertoire ci-dessus.

12
Bob

redirection vers ../

8
Chris Ballance

<a href="..">no JS needed</a>

.. signifie le répertoire parent.

7
Kornel

https://developer.mozilla.org/en-US/docs/Web/API/Location/assign

  • window.location.assign("../"); // niveau supérieur
  • window.location.assign("/path"); // relatif au domaine
5
Shaun Luttin

J'essaie de rediriger mon site Web actuel vers une autre section de la même page, à l'aide de JavaScript. Ce code de suivi fonctionne pour moi:

location.href='/otherSection'
1
Jorge Santos Neill

essayez de suivre le code js

location = '..'
0
Kamil Kiełczewski