您好我有以下ArrayCollection:
priceModel.model.arrayProducts.addItem( {'productID':pc.productID, 'product':pc.product,
'provider1': {'value':0, 'selected':false}, 'provider2': {'value':0, 'selected':false}, 'provider3': {'value':0, 'selected':false}, 'provider4': {'value':0, 'selected':false}, 'provider5': {'value':0, 'selected':false}, 'provider6': {'value':0, 'selected':false});
我有一套产品,问题是我需要迭代产品并访问某个提供商,例如:
priceModel.model.arrayProducts[product_index].('provider'+(idx+1)).value;
这不起作用。如何将代码集中在每个产品的访问者的provider_X上?
感谢。
答案 0 :(得分:0)
对于ArrayCollection你不能使用[]语法 - 你必须使用getItemAt来访问该项:
priceModel.model.arrayProducts.getItemAt(product_index)
要“动态”访问对象的属性,您反过来使用[]:
['provider'+(idx+1)].value;
所以这应该有效:
priceModel.model.arrayProducts.getItemAt(product_index)['provider'+(idx+1)].value;