Maison > interface Web > js tutoriel > Comment puis-je déclencher par programme un téléchargement de fichier dans un nouvel onglet ou une nouvelle fenêtre à l'aide de JavaScript ou de jQuery ?

Comment puis-je déclencher par programme un téléchargement de fichier dans un nouvel onglet ou une nouvelle fenêtre à l'aide de JavaScript ou de jQuery ?

DDD
Libérer: 2024-12-20 04:27:09
original
861 Les gens l'ont consulté

How Can I Programmatically Trigger a File Download in a New Tab or Window Using JavaScript or jQuery?

Comment lancer un téléchargement de fichier à l'aide de JavaScript/jQuery

Scénario :

Vous souhaitez déclencher un téléchargement de fichier lorsque un utilisateur clique sur un élément HTML spécifique à l'aide de JavaScript ou de jQuery, mais sans remplacer le contenu de la page actuelle. Au lieu de cela, vous souhaitez ouvrir le téléchargement dans une nouvelle fenêtre ou un nouvel onglet.

Solutions :

1. Utilisation d'un iframe invisible :

  • Créez un élément iframe invisible avec un identifiant autre que celui par défaut, tel que "my_iframe".
  • Utilisez l'attribut "src" de l'iframe pour spécifier l'URL du fichier.
<script>
  function Download(url) {
    document.getElementById("my_iframe").src = url;
  }
</script>
Copier après la connexion

2. Forcer un téléchargement :

  • Pour forcer le navigateur à télécharger un fichier qu'il pourrait autrement restituer (par exemple, HTML ou texte), demandez au serveur de définir son type MIME sur quelque chose de dénué de sens, tel que "application/x-please-download-me" ou "application/octet-stream."

3. Ouverture d'un fichier dans un nouvel onglet (jQuery) :

  • Définissez l'attribut "target" de l'élément HTML sur "_blank" et fournissez l'URL du fichier dans l'attribut "href".
$('a#someID').attr({target: '_blank', href: 'http://localhost/directory/file.pdf'});
Copier après la connexion

En cliquant sur ce lien, le fichier sera téléchargé dans un nouvel onglet ou une nouvelle fenêtre sans affecter la page actuelle.

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!

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal