Aktualisierte Methode:
Ab März 2016 unterstützen neuere Versionen von Chrome und Firefox die Verwendung FormData.entries()
zur Überprüfung von FormData. Quelle .
// Create a test FormData object
var formData = new FormData();
formData.append('key1', 'value1');
formData.append('key2', 'value2');
// Display the key/value pairs
for (var pair of formData.entries()) {
console.log(pair[0]+ ', ' + pair[1]);
}
Vielen Dank an Ghost Echo und rloth für den Hinweis!
Alte Antwort:
Nach dem Betrachten dieser Mozilla- Artikel scheint es keine Möglichkeit zu geben, Daten aus einem FormData-Objekt abzurufen. Sie können sie nur zum Erstellen von FormData verwenden, um sie über eine AJAX-Anforderung zu senden.
Ich habe auch gerade diese Frage gefunden, die dasselbe besagt: FormData.append ("Schlüssel", "Wert") funktioniert nicht .
Eine Möglichkeit, dies zu umgehen, besteht darin, ein reguläres Wörterbuch zu erstellen und es dann in FormData zu konvertieren:
var myFormData = {
key1: 300,
key2: 'hello world'
};
var fd = new FormData();
for (var key in myFormData) {
console.log(key, myFormData[key]);
fd.append(key, myFormData[key]);
}
Wenn Sie ein einfaches FormData-Objekt debuggen möchten, können Sie es auch senden, um es in der Netzwerkanforderungskonsole zu überprüfen:
var xhr = new XMLHttpRequest;
xhr.open('POST', '/', true);
xhr.send(fd);