【问题标题】:array list format error using $.ajax post in jQuery在 jQuery 中使用 $.ajax post 的数组列表格式错误
【发布时间】:2017-03-18 16:22:44
【问题描述】:

我的 Web API 接受以下 JSON 格式(这是输入参数)

{
  "districtID": "string",
  "legendIDs": ["string","string"]
}

我在下面用 javascript 构建请求。

var cityDistrictId = 'fb7b7ecd-f8df-4591-89de-0c9ddcd217ef'

var legendIds = ''

for (i = 0; i < list.get_items().get_count() ; i++) 
{

legendIds += """" + list.getItem(i).get_value() + """" + ",";
}

legendIds = legendIds.substring(0, legendIds.length - 1);

legendIds = '[' + legendIds + ']';

var atrDistrictLegend = { districtID: cityDistrictId, legendIDs: legendIds };

var test = JSON.stringify(atrDistrictLegend);

测试变量输出为:

{"districtID":"fb7b7ecd-f8df-4591-89de- 0c9ddcd217ef","legendIDs":"[\"00D18EECC4A1BBA42E00011202\",\"00D18EECC4A1A6814C00011202\"]"}

收到错误消息:

{"legendIDs":["输入无效。"]}

如果我像下面那样静态构建请求,它就可以工作

var cityDistrictId = 'fb7b7ecd-f8df-4591-89de-0c9ddcd217ef'    
var legendIds = ['00D18EECC4A1B4DBC000011202','00D18EECC4A1CCB9B400011202']    
var atrDistrictLegend = { districtID: cityDistrictId, legendIDs: legendIds };    
var test = JSON.stringify(atrDistrictLegend);

测试变量输出为:

{"districtID":"fb7b7ecd-f8df-4591-89de-0c9ddcd217ef","legendIDs":["00D18EECC4A1B4DBC000011202","00D18EECC4A1CCB9B400011202"]}

请帮助我解决这个简单的问题

【问题讨论】:

    标签: jquery arrays json asp.net-web-api


    【解决方案1】:

    而不是这个:

    var legendIds = ''
    
    for (i = 0; i < list.get_items().get_count(); i++) {
        legendIds += """" + list.getItem(i).get_value() + """" + ",";
    }
    
    legendIds = legendIds.substring(0, legendIds.length - 1);
    
    legendIds = '[' + legendIds + ']';
    

    试试这个:

    var legendIds = [];
    
    for (var i = 0; i < list.get_items().get_count(); i++) {
        legendIDs.push(list.getItem(i).get_value());
    }
    

    你正在构建一个字符串而不是一个数组。

    【讨论】:

    • 你真是太棒了。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多