Php jsajax发送多个数据数组

Php jsajax发送多个数据数组,php,javascript,jquery,ajax,knockout.js,Php,Javascript,Jquery,Ajax,Knockout.js,我试图在ajax保存函数中发送多个数据数组 我可以像data:hardwarePayload那样单独处理每个数组,这样就可以了。如果我执行{hardware:hardwarePayload,service:servicePayload}我会得到非常奇怪的JSON输出。这看起来像: 硬件=%5B%7B%22hardwareName%22%3A%221%22%2C%22hardwarequality%22%3A%22%22%2C%22hardwareBYOD%22%3A%22%7D%5D&服务=%5

我试图在ajax保存函数中发送多个数据数组

我可以像
data:hardwarePayload
那样单独处理每个数组,这样就可以了。如果我执行
{hardware:hardwarePayload,service:servicePayload}
我会得到非常奇怪的JSON输出。这看起来像:

硬件=%5B%7B%22hardwareName%22%3A%221%22%2C%22hardwarequality%22%3A%22%22%2C%22hardwareBYOD%22%3A%22%7D%5D&服务=%5B%7B%22serviceName%22%3A%223%22%2C%22serviceQuantity%22%3A%22%22%7D%5D

我真的需要两个阵列,一个硬件和一个服务,这样我就可以单独获取每个阵列

我的代码如下所示


我认为如果你不严格控制你的数据,你会过得更好:

(注意,我使用的是而不是字符串化的硬件模型和服务模型)


通过这种方式,您可以让jQuery处理请求的(json)数据。

我认为如果您不将数据字符串化,您会过得更好:

(注意,我使用的是而不是字符串化的硬件模型和服务模型)


通过这种方式,您可以让jQuery处理请求的(json)数据。

您应该试试这个

var hardwarePayload = hardwareModel;
var servicePayload = serviceModel;

var postData = {'hardware': hardwarePayload, 'service':servicePayload};

var postData = JSON.stringify(postData);

alert(postData);

$.ajax({
    url: '/orders/add',
    type: 'post',
    data: postData,
    contentType: 'application/json',
    success: function (result) {
        alert(result);
    }
});

你应该试试这个

var hardwarePayload = hardwareModel;
var servicePayload = serviceModel;

var postData = {'hardware': hardwarePayload, 'service':servicePayload};

var postData = JSON.stringify(postData);

alert(postData);

$.ajax({
    url: '/orders/add',
    type: 'post',
    data: postData,
    contentType: 'application/json',
    success: function (result) {
        alert(result);
    }
});
var hardwarePayload = hardwareModel;
var servicePayload = serviceModel;

var postData = {'hardware': hardwarePayload, 'service':servicePayload};

var postData = JSON.stringify(postData);

alert(postData);

$.ajax({
    url: '/orders/add',
    type: 'post',
    data: postData,
    contentType: 'application/json',
    success: function (result) {
        alert(result);
    }
});