Y a-t-il un moyen de suivre une URL en JavaScript sans définir le document.location.href
?Suivre une URL en utilisant JavaScript
J'ai une page qui affiche une liste d'objets et chaque objet peut être associé à un téléchargement de fichier auquel on accède via un lien hypertexte. Un clic sur le lien lance une requête AJAX qui aboutit à la génération d'un fichier transitoire pouvant être référencé par une URL unique et temporaire.
Au moment où l'appel AJAX est terminé, il définit simplement document.location.href
sur l'URL temporaire et le téléchargement du fichier est lancé. Bien sûr, cela a pour effet secondaire de changer l'URL dans la barre d'adresse du navigateur. Ainsi, si la page est actualisée, le fichier est à nouveau téléchargé au lieu de rafraîchir la page de listage des objets elle-même. Je suppose que je pourrais remettre l'URL à ce qu'elle était avant, mais cela me semble un peu hacky. Par ailleurs, j'utilise le framework JavaScript Prototype.
Créer une nouvelle fenêtre et charger cette URL dans cette fenêtre est une bonne idée. Je suis sûr que la plupart des navigateurs ferment automatiquement la fenêtre contextuelle une fois qu'il se rend compte qu'il ne s'agit pas d'un fichier HTML. – Kibbee
J'ai essayé cette approche dans le passé et malheureusement vous obtenez un flash méchant que la fenêtre apparaît. Cela ressemble à un iframe est le chemin à parcourir. –