Размещать данные в массивах вызовов Ajax, преобразованных в строки?

#javascript #jquery #ajax

#язык JavaScript #jquery #аякс

Вопрос:

Я пытаюсь отправить массивы в качестве переменных post в вызове Ajax с помощью FormData. По какой-то причине они преобразуются в строки, когда я смотрю в консоль. Я не могу обновить функции, принимающие данные, чтобы принимать строки, они должны принимать массивы. Я читал об использовании функции сериализации, но тогда у меня также остается strings…so Я не знаю, как это сделать. Вот код, который у меня есть до сих пор:

 function submitSearch(method) {   if (method==='ajax_getPrograms') {  fields = ['pkProgramID','fldName','fldOrganization','fldProgramStartDate','fldProgramEndDate'];  }  if (method==='ajax_getPlots') {  fields = ['id','lat','long','plotSampleYear'];   }   if (method==='ajax_getTrees') {  fields = ['id','species','DBH','treeStatus','treeSampleYear'];   }   var posturl = baseURL   "data/" method;  var formData = new FormData();   formData.append('fields',fields);   $.ajax({  url: posturl,  cache: false,  data: formData,  method: 'POST',  mimeType: "multipart/form-data",  contentType: false,  processData: false,  type: 'POST',  error: function (xhr, status, error) {  console.log(xhr);  console.log(status);  console.log(error);  },  success: function (data) {    console.log(data);   }  }); }  

Когда я отправляю это, я получаю сообщение об ошибке, что моя функция получает строку, а не массив, и это то, что я вижу на вкладке сеть консоли: введите описание изображения здесь

Любая помощь приветствуется, спасибо!

Комментарии:

1. Почему вы используете mimeType: "multipart/form-data" ? Вы пробовали это без этого мимеТипа (полностью опуская его)?

2. Я получаю тот же результат без мимеТипа. Я использовал это, потому что видел это в примере с использованием FormData.