Оновлений метод:
Станом на березень 2016 року останні версії Chrome і Firefox тепер підтримують FormData.entries()
для перевірки FormData. Джерело .
// 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]);
}
Дякуємо Ghost Echo та rloth за те, що вони це вказали !
Стара відповідь:
Переглянувши ці статті Mozilla , схоже, немає можливості отримати дані з об’єкта FormData. Ви можете використовувати їх лише для створення FormData для надсилання через запит AJAX.
Я також щойно знайшов це питання, в якому йдеться про те саме: FormData.append ("ключ", "значення") не працює .
Одним із способів цього було б скласти звичайний словник, а потім перетворити його у FormData:
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]);
}
Якщо ви хочете налагоджувати звичайний об’єкт FormData, ви також можете надіслати його, щоб перевірити його на консолі мережевого запиту:
var xhr = new XMLHttpRequest;
xhr.open('POST', '/', true);
xhr.send(fd);