我有以下循环:
for( i = 1; i < parseInt(data.anzahl_parameter) + 1; i++ )
{
newParameterInputFieldLabel = $( "<label>" )
.text( data.p1_einheit )
.attr( "for", "einheit1" )
.appendTo( newInputAreaAmountDiv );
newParameterInputField = $( "<input>" )
.addClass("insertFloat")
.attr("id", "einheit" + i)
.appendTo( newParameterInputFieldLabel );
}
变量data.p1_einheit来自json数组。当data.anzahl_parameter只有1个元素时,这很好用。
但是当我有2个或更多元素时,我无法动态使用变量。
我试过这个:
data.p[i]_einheit
但我的脚本停止了。
为了让它有效,我应该改变什么?
答案 0 :(得分:1)
您必须将整个属性名称(作为字符串)放在方括号之间。使用它们而不是点符号,而不是在它的中间。
data["p" + i + _einheit]
你可能最好不要重构JSON,所以你有一个数组而不是遵循数字约定的属性。