Je veux télécharger un fichier PDF lorsque j'appuie sur un bouton HTML. Je veux que l'événement de clic soit dans un fichier JS.
J'ai besoin de quelque chose qui fait le même Thig que le code ci-dessous mais dans un fichier JS: p> J'ai essayé Pour suivre cela, mais cela ne crée pas mon bouton: p>
3 Réponses :
vient de le faire fonctionner, voici mon code de travail
const blob = new Blob([response], { type: 'application/pdf' }); const link = document.createElement('a'); link.href = window.URL.createObjectURL(blob); link.download = "filename.pdf"; link.click();
Merci. J'ai mon bouton mais ça ne télécharge toujours pas
Si vous avez déjà l'URL et que vous voulez simplement que le fichier soit téléchargé, utilisez un lien invisible, puis cliquez dessus pour l'utilisateur:
function triggerDownload(url, filename) { const a = document.createElement('a'); a.href = url; a.download = filename; a.style.display = `none`; document.body.appendChild(a); a.click(); document.body.removeChild(a); }
Je serais d'accord avec Mike, vous n'avez besoin d'aucun ajax pour le télécharger
Si vous souhaitez ajouter l'horodatage pour le téléchargement lorsque vous le téléchargez, changez simplement l'attribut de téléchargement dynamique ou mieux encore dans le backend à l'aide de l'en-tête de fixation de disposition de contenu p> p>
... Pourquoi? Quel est le problème avec un
code>? Les JS que vous affichez suggèrent que tout ce que vous faites est de faire JS exécutez la demande d'obtention de ce qui est déjà un fichier PDF, puis essayant de l'enterrer via un
code>, ce qui fait très peu de sens comparé à «Utilisation de cette URL dans votre
code>». Au plus, créez le JS définir le
href code> et
Télécharger code> attributs?
Je veux utiliser un appel asynchrone
Asynchrone quoi?
code> Les téléchargements déclenchés sont déjà asynchrones.
Votre code JavaScript n'a rien dans qui créerait un élément code>.
@ Mike'pomax'kamermans tu veux dire un seattribute ()?
@James c'est ce que je cherche toujours
Fyi,
date.now () code> fait la même chose que
nouvelle date (). Gettime () code> et est plus court ...
Notez que la touche
code> dans une ancrage est invalide HTML ...
Utilisez télécharger JS Bibliothèque. Utilisation de
Télécharger (URL-Chemin) CODE> fonctionnera.