我正试图在第二个循环中获得一个foreach循环。 我的代码:
var results = data.d.results;
var boxes= [
"Nmb1",
"Nmb2",
"Nmb3",
"Nmb4",
"Nmb5",
];
boxes.forEach(function(n){
var boxesEach = results[0].n.results;
boxesEach.forEach(function(i){
$("input[value="+'"'+i+'"'+"]").attr('checked', true);
});
});
我要做的是让例如“Nmb1”替换“n”,这将产生以下“输出代码”:
var boxesEach = results[0].Nmb1.results;
如果我只是将代码放在那里而不是循环中,它就可以工作。
感谢您的帮助和提示。
BTW:我从Sharepoint 2013服务器(使用REST API)通过AJAX获取JSON。
答案 0 :(得分:4)
您需要像索引一样使用它。这称为括号表示法(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_Accessors#Bracket_notation)
var boxesEach = results[0][n].results;
你现在正试图使用一个Dot符号,你需要实际的属性名称(即Nmb1),而不是一个包含属性名称的变量。