Maison > interface Web > js tutoriel > Comment définir par programme les valeurs d'entrée de fichier après un glisser-déposer ?

Comment définir par programme les valeurs d'entrée de fichier après un glisser-déposer ?

DDD
Libérer: 2024-12-03 13:03:12
original
370 Les gens l'ont consulté

How to Programmatically Set File Input Values After Drag-and-Drop?

Définition de la valeur d'entrée du fichier lors du dépôt de page

Arrière-plan

Vous travaillez sur un contrôle qui permet la sélection et la soumission de fichiers en se rendant dans une zone désignée. Cependant, vous remarquez que l'entrée du fichier reste vide jusqu'à ce que le formulaire soit soumis manuellement.

Solution : définition d'un objet fichier à partir de JavaScript

Heureusement, les navigateurs modernes autorisent désormais la configuration par programmation. des fichiers d'entrée à l'aide de la propriété files. Voici comment l'implémenter à l'aide du transfert de données :

let target = document.documentElement;
let fileInput = document.querySelector('input');

target.addEventListener('drop', (e) => {
  e.preventDefault();
  fileInput.files = e.dataTransfer.files;
});
Copier après la connexion

Méthode alternative : FileList

Vous pouvez également définir la valeur d'entrée du fichier à partir d'un objet FileList :

let fileInput = document.querySelector('input');

fileInput.files = [file1, file2, ...];
Copier après la connexion

Avis de non-responsabilité

La possibilité de définir la saisie les valeurs des fichiers dépendent du transfert de données ou des objets FileList disponibles. Les risques de sécurité hérités associés à cette fonctionnalité ont été résolus dans les navigateurs modernes.

Exemple

Une démonstration peut être trouvée dans l'extrait de code fourni ci-dessous :


let fileInput = document.querySelector('input');</p><p>target.addEventListener('drop', (e) => {<br> e.preventDefault();<br> fileInput.files = e.dataTransfer.files;<br>});


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