Как удалить значение Из виде FormData

здесь способ до FormData :

  var data = new FormData();
  jQuery.each($('#file')[0].files, function(i, file) {
          data.append('file-'+i, file);
  });

можно ли сделать как ниже ?

     data[i].remove();???
 or  data[i] = file;??

как iIcan удалить или изменить значение data

2 ответов


вы не можете делать ничего, кроме добавления элементов к объекту FormData. См.спец. Было бы лучше, если бы вы использовали словарь/объект для хранения всех значений, которые вы хотите добавить/изменить, прежде чем создавать объект.

var data = {};
jQuery.each($('#file')[0].files, function(i, file) {
  data['file-'+i] = file;
});

//modify the object however you want to here

var formData = new FormData();
for (var key in data) {
  formData.append(key, data[key]);
}

Я знаю, что этот поток старый, но я только что нашел это:https://developer.mozilla.org/en-US/docs/Web/API/FormData/delete

Я уверен, что это может помочь. Вы можете использовать formData.delete(name) чтобы удалить запись formData с ключом "name".