Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
FormData.set()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis octobre 2018.
Note : Cette fonctionnalité est disponible via les Web Workers.
La méthode set() de l'interface FormData définit une nouvelle valeur pour une clé existante dans un objet FormData, ou ajoute la clé/valeur si elle n'existe pas encore.
La différence entre set() et FormData.append est que si la clé spécifiée existe déjà, set() écrasera toutes les valeurs existantes avec la nouvelle, tandis que FormData.append ajoutera la nouvelle valeur à la fin de l'ensemble de valeurs existant.
Note : Cette méthode est disponible dans les Web Workers.
Syntaxe
Il existe deux versions de cette méthode : une version à deux et une version à trois paramètres :
formData.set(name, value);
formData.set(name, value, filename);
Paramètres
name-
Le nom du champ dont les données sont contenues en valeur (
value). value-
La valeur du champ. Il peut s'agir d'un
USVStringou d'unBlob(y compris les sous-classes telles queFile). Si aucune de ces sous-classes n'est spécifiée, la valeur est convertie en une chaîne de caractères. filenameFacultatif-
Le nom de fichier communiqué au serveur (un
USVString), lorsqu'unBlobou unFileest passée comme deuxième paramètre. Le nom de fichier par défaut pour les objetsBlobest "blob". Le nom de fichier par défaut pour les objetsFileest le nom du fichier.
Note :
Si vous spécifiez un Blob comme donnée à ajouter à l'objet FormData, le nom du fichier qui sera rapporté au serveur dans l'en-tête "Content-Disposition" utilisé pour varier d'un navigateur à l'autre.
Exemple
La ligne suivante crée un objet FormData vide:
var formData = new FormData(); // Actuellement vide
Vous pouvez définir des paires clé/valeur à ce sujet en utilisant FormData.set :
formData.set("username", "Chris");
formData.set("userpic", myFileInput.files[0], "chris.jpg");
Si la valeur envoyée est différente de String ou Blob, elle sera automatiquement convertie en String :
formData.set("name", 72);
formData.get("name"); // "72"
Spécifications
| Specification |
|---|
| XMLHttpRequest> # dom-formdata-set> |
Compatibilité des navigateurs
Chargement...