Maison >interface Web >js tutoriel >Comment puis-je créer et télécharger des fichiers texte côté client sans interaction avec le serveur ?

Comment puis-je créer et télécharger des fichiers texte côté client sans interaction avec le serveur ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-21 13:27:16398parcourir

How Can I Create and Download Text Files Client-Side Without Server Interaction?

Création de fichiers dans la mémoire utilisateur à télécharger

Générer des fichiers texte côté client et inviter les utilisateurs à les télécharger sans implication du serveur est possible. Cette approche évite l'écriture directe de fichiers sur l'ordinateur de l'utilisateur en raison de contraintes de sécurité.

Solution pour les navigateurs HTML5

Pour les navigateurs compatibles HTML5, le code JavaScript suivant vous permet de créer et inviter l'utilisateur à enregistrer un fichier :

function download(filename, text) {
  var element = document.createElement('a');
  element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
  element.setAttribute('download', filename);

  element.style.display = 'none';
  document.body.appendChild(element);

  element.click();

  document.body.removeChild(element);
}

Pour utiliser ce code, fournissez le nom de fichier souhaité et le contenu du texte comme arguments au fonction download(). Un élément de lien est créé avec l'URL de données et l'ensemble d'attributs de téléchargement. L'élément est ensuite rendu invisible, ajouté au corps du document, cliqué pour lancer le téléchargement et enfin supprimé.

Cette méthode fournit une solution simple pour générer et inviter les utilisateurs à enregistrer des fichiers texte côté client sans serveur. interaction.

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:
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