NS_ERROR_MALFORMED_URI dans FF lors de l'appel de document.emplacement.replace()
Je vois l'exception suivante dans FF 3.5.6:
uncaught exception: [Exception... "The URI is malformed" nsresult: "0x804b000a (NS_ERROR_MALFORMED_URI)" location: "JS frame :: http://x :: refreshPage :: line 193" data: no]
Cette erreur se produit lors de l'appel de document.emplacement.replace("/relative/url") sur la fenêtre parent d'un iframe.
Il est également reproductible dans FF2, mais IE8 ne présentent pas le problème.
EDIT: Le code suivant dans le même contexte n'est pas le problème:
document.location.reload();
De quoi êtes-vous le remplacer? C'est probablement de se retrouver avec un mal formé URI que Firefox ne peut pas gérer...
Je suis le remplaçant par un chemin d'accès relatif. J'ai remarqué que ce problème n'existe pas si j'utilise un chemin d'accès absolu. Je suppose que cela pourrait être une iframe de restriction de sécurité.
Je suis le remplaçant par un chemin d'accès relatif. J'ai remarqué que ce problème n'existe pas si j'utilise un chemin d'accès absolu. Je suppose que cela pourrait être une iframe de restriction de sécurité.
OriginalL'auteur jthompson | 2009-12-18
Vous devez vous connecter pour publier un commentaire.
La solution je suis venu avec était de composer une URL absolue et en l'assignant à la fenêtre.emplacement. Reload() a causé quelques problèmes avec les redirections internes.
OriginalL'auteur jthompson
est une erreur. Vous devez transmettre une adresse dans le
replace
méthode comme un argument. Sinon, vous êtes effectivement en passantundefined
, qui, comme le “URI est malformé” message pourrait le suggérer, n'est pas une adresse valide.Je ne sais pas ce que vous essayez de faire... si vous voulez recharger la page, vous devez, en effet, utiliser
location.reload()
. Mais "remplacer l'actuel emplacement de l'URI (rien)" est vide de sens.OriginalL'auteur bobince