Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 13453|Répondre: 0

[Jquery] Javascrip{filter}t FormData en détail et son utilisation

[Copié le lien]
Publié sur 08/05/2018 16:30:39 | | |
FormData est une introduction et une utilisation détaillées  https://developer.mozilla.org/zh ... ng_FormData_Objects

Les méthodes et événements de FormData y sont déjà très clairs, donc je ne vais pas perdre de temps là-dessus. Cet article explique principalement l’utilisation des objets FormData et des téléchargements asynchrones de fichiers.

L’objet FormData nous permet d’organiser une collection de paires clé-valeur envoyées à l’aide de l’objet XMLHttpRequest. Il est principalement utilisé pour envoyer des données de formulaires, mais peut être utilisé indépendamment des données transférées via des formulaires.

1. Créer un objet FormData à partir de zéro

Vous pouvez créer votre propre objet FormData puis ajouter des paires clé-valeur à l’objet via la méthode append(), comme ceci :

Note : Les champs « userfile » et « webmasterfile » contiennent tous deux des fichiers. Le numéro attribué au champ « accountnum » est directement converti en chaîne par la méthode FormData.append() (la valeur du champ peut être un blob, un fichier ou une chaîne : si la valeur n’est ni un blob ni un fichier, la valeur est convertie en chaîne).
Cet exemple crée une instance FormData avec les champs « username », « accountnum », « userfile » et « webmasterfile », puis utilise la méthode send() de l’objet XMLHttpRequest pour envoyer les données du formulaire. Le champ « webmasterfile » est un blob. Un objet blob représente les données brutes d’un objet fichier. Mais les données représentées par le blob n’ont pas besoin d’être dans le format natif javascript. L’interface des fichiers est basée sur des blobs, héritant de la fonctionnalité des blobs et étendant son support pour les systèmes de fichiers utilisateurs. Pour construire un blob, on peut appeler le constructeur Blob().

2. Obtenir un objet FormData à partir d’un formulaire HTML

Pour obtenir un objet FormData contenant des données de formulaire existantes, vous devez spécifier l’élément de formulaire lors de la création de l’objet FormData.

Comme ça:
Vous pouvez également ajouter des données supplémentaires après avoir obtenu l’objet FormData, comme ceci :
Cela vous permet d’ajouter des informations supplémentaires avant d’envoyer, pas forcément modifiées par l’utilisateur.

3. Utiliser l’objet FormData pour envoyer le fichier

Vous pouvez utiliser FormData pour envoyer des fichiers. Un <form>intermédiaire simple peut <input>inclure un élément :

Vous pouvez ensuite utiliser le code suivant pour l’envoyer :
Vous pouvez aussi ajouter un fichier ou un blob directement à l’objet FormData, comme ceci :
Lors de l’utilisation de la méthode append(), un troisième paramètre peut être utilisé pour envoyer le nom du fichier (envoyé au serveur via l’en-tête Content-Disposition). Si le troisième paramètre n’est pas spécifié ou si ce paramètre n’est pas pris en charge, le troisième paramètre passe par défaut à « blob ».

Si vous définissez les bonnes options, vous pouvez aussi l’utiliser avec jQuery :







Précédent:Téléchargez 103976 vocabulaire anglais (version SQL).
Prochain:.net/c# teste, le calcul serveur et la vitesse d’e/s
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com