Maison > interface Web > js tutoriel > Comment puis-je télécharger des fichiers dans un nouvel onglet ou une nouvelle fenêtre à l'aide de JavaScript/jQuery sans remplacer la page actuelle ?

Comment puis-je télécharger des fichiers dans un nouvel onglet ou une nouvelle fenêtre à l'aide de JavaScript/jQuery sans remplacer la page actuelle ?

Linda Hamilton
Libérer: 2024-12-15 21:44:11
original
946 Les gens l'ont consulté

How Can I Download Files in a New Tab or Window Using JavaScript/jQuery Without Replacing the Current Page?

Téléchargement de fichiers à l'aide de JavaScript/jQuery sans remplacer la page actuelle

Problème :
Comment lancer manuellement un téléchargement de fichier dans un autre onglet ou fenêtre, tout en évitant le comportement par défaut consistant à remplacer la page actuelle par le fichier téléchargé en utilisant JavaScript/jQuery ?

Solution :

Pour télécharger un fichier dans un nouvel onglet ou une nouvelle fenêtre sans perturber la page en cours :

Utiliser une Iframe invisible :

Cette méthode crée une iframe invisible et attribue l'URL de téléchargement à son src attribut :

<iframe>
Copier après la connexion

Cela déclenche le téléchargement en arrière-plan. Pour garantir que le navigateur télécharge des fichiers non restituables (par exemple, HTML, texte), le serveur doit définir le type MIME du fichier sur une valeur absurde comme application/x-please-download-me ou application/octet-stream.

Ouverture dans un nouvel onglet (jQuery) :

Pour ouvrir le fichier dans un nouvel onglet, utilisez jQuery pour définir le l'attribut target du lien à _blank et spécifiez l'URL du fichier dans l'attribut href :

$('a#someID').attr({
  target: '_blank',
  href: 'http://localhost/directory/file.pdf'
});
Copier après la connexion

Lorsque vous cliquez sur le lien, le fichier sera téléchargé dans un nouvel onglet ou une nouvelle fenêtre, en fonction des paramètres du navigateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal