Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ajaxpost网上的数据格式_Javascript_Jquery_Ajax_Asp.net Mvc 4 - Fatal编程技术网

Javascript ajaxpost网上的数据格式

Javascript ajaxpost网上的数据格式,javascript,jquery,ajax,asp.net-mvc-4,Javascript,Jquery,Ajax,Asp.net Mvc 4,在我的AJAX post调用中,我希望在Chrome网络标题详细信息中查看数据时,数据的格式是这样的——这正是服务器端所期望的。问题是:我如何更新下面的JS以格式化如下数据: percentages[0].Id:7 percentages[0].Percentage:26.1 percentages[1].Id:8 percentages[1].Percentage:20.3 但是,数据当前的格式如下 percentages[0][Id]:7 percentages[0][Percentage

在我的AJAX post调用中,我希望在Chrome网络标题详细信息中查看数据时,数据的格式是这样的——这正是服务器端所期望的。问题是:我如何更新下面的JS以格式化如下数据:

percentages[0].Id:7
percentages[0].Percentage:26.1
percentages[1].Id:8
percentages[1].Percentage:20.3
但是,数据当前的格式如下

percentages[0][Id]:7
percentages[0][Percentage]:26.1
percentages[1][Id]:8
percentages[1][Percentage]:20.3
在通过AJAX发送数据之前,我目前正在JS中格式化数据

var params = {};
var dict = [];
for (var idx in data) {
    var item = {
        Id: idx,
        Percentage: data[idx]
    };
    dict.push(item);
}
params['percentages'] = dict;
其中数据变量在写入Chrome控制台时包含如下数据:

Object {7: "26.1", 8: "20.3"}
提前谢谢

编辑: 回应@Bogangles的请求:我正在使用.NET,我试图填充的结构是:

IEnumerable<PercentageViewModel> percentages

这就是允许正确填充服务器端数据结构的答案

var i = 0;
for (var idx in data) {
    params['percentages[' + i + '].Id'] = data[idx].Id;
    params['percentages[' + i + '].Percentage'] = data[idx].Percentage;
    i++;
}

我不确定这里有什么区别。你能从服务器语言的角度给出一个你想要的数据的例子吗?我认为这只是控制台中数据格式的问题。从语义上讲,两者没有区别。您应该查看real traffic Network选项卡,类似于'show raw'Ahh,您不与JSON对象通信,而是使用www form urlencoded,对吗?请求的内容类型是:application/x-www-form-urlencoded;字符集=UTF-8
var i = 0;
for (var idx in data) {
    params['percentages[' + i + '].Id'] = data[idx].Id;
    params['percentages[' + i + '].Percentage'] = data[idx].Percentage;
    i++;
}