Я пытаюсь отправить несколько массивов данных в мою функцию сохранения ajax.JS AJAX отправка нескольких массивов данных
Я могу сделать каждый массив отдельно, как data:hardwarePayload
, и он будет работать. Если я сделаю {hardware: hardwarePayload, service:servicePayload}
, я получаю очень странный вывод JSON. который выглядит как:
аппаратных средств =% 5B% 7B% 22hardwareName% 22% 3A% 221% 22% 2C% 22hardwareQuantity% 22% 3A% 22% 22% 2C% 22hardwareBYOD% 22% 3A% 22% 22 % 7D% 5D & обслуживание =% 5B% 7B% 22serviceName% 22% 3A% 223% 22% 2C% 22serviceQuantity% 22% 3A% 22% 22% 7D% 5D
мне действительно нужно два массива одного аппаратного обеспечения и одну услугу, чтобы я мог схватить каждого по отдельности.
Мой код выглядит следующим образом ..
self.save = function (form) { var hardwareModel = []; var serviceModel = []; ko.utils.arrayForEach(self.services(), function (service) { serviceModel.push(ko.toJS(service)); }); ko.utils.arrayForEach(self.hardwares(), function (hardware) { hardwareModel.push(ko.toJS(hardware)); }); //allModel.push({accountId: ko.toJS(account)}); var hardwarePayload = JSON.stringify(hardwareModel); var servicePayload = JSON.stringify(serviceModel); //alert(JSON.stringify(serviceModel) +JSON.stringify(allModel)); $.ajax({ url: '/orders/add', type: 'post', data: {hardware: hardwarePayload, service:servicePayload}, // data:hardwarePayload, contentType: 'application/json', success: function (result) { alert(result); } }); };
Я получаю то же самое. Это Knockout.js, если это имеет значение. – ipengineer