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>
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' });
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!