如何在ajax请求中将多组数据作为单个变量发布?

时间:2012-08-23 15:32:58

标签: javascript jquery ajax

我目前有一个jQuery ajax函数,它将多维数组发布到我的服务器上。

$.ajax({
  type: "POST",
  url: "Default.aspx/SaveQuoteProcesses",
  data: "{'items':" + JSON.stringify(jaggedArray) + "}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function (msg){
    console.log('Success');
  },
  error: function (){
    console.log('Fail');
  }
});

以下是我当前发布到服务器的数据集的示例:

[
    {"QpcOpsID":"22","QpcQitID":"63"},
    {"QpcOpsID":"20","QpcQitID":"63"},
    {"QpcOpsID":"26","QpcQitID":"63"},
    {"QpcOpsID":26,"QpcQitID":"63","QpcPprID":6,"PprQuestion":"How many colors?","AnswerValue":"4"}
]

我现在需要在同一个AJAX请求中向服务器发送常规数组。

["22", "20", "26"] 

如何在现有的javascript对象中包含这个新数组?

2 个答案:

答案 0 :(得分:4)

var data = {
  items: jaggedArray,
  newArray: ["22", "20", "26"]
};

然后只是JSON.stringify(data)

答案 1 :(得分:1)

您可以将数组添加为已发送JSON的另一个属性 -

data: "{'items':" + JSON.stringify(jaggedArray) + ",'additionalArray':"+JSON.stringify(YOUR_ARRAY)+"}",