Javascript 使用$.ajax时出现JSON输入字符串错误

Javascript 使用$.ajax时出现JSON输入字符串错误,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我的web API接受以下JSON格式(这是输入参数) 我正在用javascript构建下面的请求 var administratorId = '47fe8af8-0435-401e-9ac2-1586c8d169fe' var districtId = '144d0d78-c8eb-48a7-9afb-fceddd55622c' var atrUserLegendsInputs for (i = 0; i < list.get_items().get_count() ; i++)

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

我正在用javascript构建下面的请求

var administratorId = '47fe8af8-0435-401e-9ac2-1586c8d169fe'
var districtId = '144d0d78-c8eb-48a7-9afb-fceddd55622c'

var atrUserLegendsInputs

for (i = 0; i < list.get_items().get_count() ; i++) 
{
atrUserLegendsInputs += { atrSpaUserId: administratorId, atrSpaClassLegendId:     list.getItem(i).get_value(), atrSpaCityDistrictId: districtId }  + ',';
}

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

var legendIds = '[' + atrUserLegendsInputs + ']';

var atrDistrictLegend = { districtID: cityDistrictId, legendIDs: legendIds };
var test = JSON.stringify(atrDistrictLegend);
我不确定我的做法是否正确。我不熟悉Json和ajax调用。你能帮我解决这个问题吗?试试这个代码

var administratorId = '47fe8af8-0435-401e-9ac2-1586c8d169fe';
var districtId = '144d0d78-c8eb-48a7-9afb-fceddd55622c';

//* create empty array  for legends
var atrUserLegendsInputs = [];

for (i = 0; i < list.get_items().get_count() ; i++) {
    //* put some values into legends' array
    atrUserLegendsInputs.push({ 
        atrSpaUserId: administratorId,
        atrSpaClassLegendId:     list.getItem(i).get_value(),
        atrSpaCityDistrictId: districtId
    });
}

var atrDistrictLegend = {
    districtID: cityDistrictId,
    legendIDs: atrUserLegendsInputs
};
var test = JSON.stringify(atrDistrictLegend);
var管理员ID='47fe8af8-0435-401e-9ac2-1586c8d169fe';
var districtId='144d0d78-c8eb-48a7-9afb-fceddd55622c';
//*为图例创建空数组
var atrUserLegendsInputs=[];
对于(i=0;i
atrUserLegendsInputs
未初始化为空列表或任何内容,然后您尝试+=添加到它?然后在上面做一个子串。您似乎试图使用与数组和字符串相同的变量。谢谢您的回答。我找到了解决办法。非常感谢您的快速回复。这是有效的。
{["The input was not valid."]}
var administratorId = '47fe8af8-0435-401e-9ac2-1586c8d169fe';
var districtId = '144d0d78-c8eb-48a7-9afb-fceddd55622c';

//* create empty array  for legends
var atrUserLegendsInputs = [];

for (i = 0; i < list.get_items().get_count() ; i++) {
    //* put some values into legends' array
    atrUserLegendsInputs.push({ 
        atrSpaUserId: administratorId,
        atrSpaClassLegendId:     list.getItem(i).get_value(),
        atrSpaCityDistrictId: districtId
    });
}

var atrDistrictLegend = {
    districtID: cityDistrictId,
    legendIDs: atrUserLegendsInputs
};
var test = JSON.stringify(atrDistrictLegend);