我有一个产品列表,您可以看到JSON:
var panier =
{
"Client": "Ben",
"Date":"",
"Produits": [
{
"Id": "188",
"Name":"Name1",
"Qte": "5",
"Variante":
"20 Pcs",
"Prix" :"149.00"
},
{
"Id": "231",
"Name":"Name2",
"Qte": "2",
"Variante": "7 encas de 35g",
"Prix" :"109.00"
},
{
"Id": "232",
"Name":"Name3",
"Qte": "7",
"Variante": "10 pieces",
"Prix" :"99.00"
}
]
};
我用ionic列出了要检索的产品,所有这些都可以使用。
当我执行时,在列表项内(例如,firsr项)
Qte = {{product.Qte}}
,它给了我Qte = 5
但是当我想将数量放到选择上时,它不适用于ng-init:
<select
ng-model="selectedQte"
ng-init="selectedQte = {{product.Qte}}"
ng-options="selectedQte for selectedQte in range('10')"
ng-change="product.Qte = selectedQte">
</select>
我试过了 :
ng-init="selectedQte = product.Qte"
和:
ng-init="selectedQte = {{product.Qte}}"
但是什么也没发生。当我尝试过:
ng-init="selectedQte = 3"
我的3个选择中都有一个
3
。但是我要在第一个上使用
5
,在第二个上使用2
,在第三个上使用7
。需要任何帮助,谢谢!
最佳答案
看起来问题出在JSON中dataType
的Qte
是string
&为range创建的array
是number
的序列。您需要将来自响应的JSON转换为number
而不是string
才能解决问题。您可以将Product.Qte
直接绑定到ng-model
。
标记
<select ng-model="product.Qte"
ng-options="selectedQte for selectedQte in range('10')">
</select>