2010-01-25 4 views
4

Au clic d'un bouton, je change window.location.href, c'est-à-dire que j'ajoute un paramètre de chaîne de requête. Cela provoque l'actualisation de la page (car je change window.location.href). Je veux savoir est-il possible d'arrêter cette actualisation de page et d'ajouter la chaîne de requête dans l'URL?Arrêt du rechargement lors de l'utilisation de window.location

Répondre

8

Non. Vous pouvez modifier le #hashstring, mais la modification de la chaîne de requête entraîne un rechargement.

+0

merci pour votre aide. – Wondering

3

Si vous ajoutez une chaîne #hash, la page ne sera pas rechargée. De plus, si l'utilisateur appuie sur le bouton de retour du navigateur, il supprimera #hashstring. La #hashstring peut être utile pour sauvegarder l'état dans la barre d'URL sans provoquer de rechargement et peut être couplée avec des appels ajax.

Il est important de noter que la #hashstring ne sera pas envoyée au serveur et sera uniquement visible par le navigateur Web. Par exemple: http://example.com/#blah

va générer une requête http qui ressemble à:

GET/HTTP/1.1 
Host: example.com 

Le #blah ne soit pas envoyé vers le serveur par le navigateur.

+1

Je ne savais pas que les navigateurs n'envoyaient pas le hachage aux serveurs. Intéressant. +1, et bienvenue dans Stack Overflow. – Kobi

Questions connexes