我已经在其他帖子中读过这篇文章,但无法理解。我有阵列:
$scope.adresses = [
{ id:"5", libelle:"DARGAUD EDITEUR", adresse:"Rue Moussorgski 15/27 75018 Paris France"},
{ id:"6", libelle:"CPE", adresse:"Rue de l'évangile 73 75018 Paris France"},
{ id:"7", libelle:"SIPACK", adresse:"Z.I. Gellainville Rue Joseph Cugnot 7 28630 Chartres France"},
{ id:"8", libelle:"URBAN COMICS", adresse:"Rue Moussorgski 15/27 75018 PARIS France"}
];
我想渲染一下:
<select name="livAdresse">
<option value="5" title="Rue Moussorgski 15/27 75018 Paris France">DARGAUD EDITEUR</option>
<option value="6" title="Rue de l'évangile 73 75018 Paris France" selected="selected">CPE</option>
<option value="7" title="Z.I. Gellainville Rue Joseph Cugnot 7 28630 Chartres France">SIPACK</option>
<option value="8" title="Rue Moussorgski 15/27 75018 PARIS France">URBAN COMICS</option>
</select>
我试过这个:
<select name="livAdresse" ng-model="livraison.toAdresse">
<option ng-repeat="adr in adresses" ng-selected="adr.id==livraison.toAdresse" value="{{adr.id}}" title="{{adr.adresse}}">{{adr.libelle}}</option>
</select>
浏览器不关心所选的选项:-((firefox和chrome)
答案 0 :(得分:2)
尝试此选项:
<强> HTML 强>
<select>
<option ng-repeat="v in adresses" value="{{v.id}}" title="{{v.adresse}}"
ng-selected="adresses.indexOf(v) == 1">{{v.libelle}}</option>
</select>
<强> JS 强>
$scope.adresses = [{
id: "5",
libelle: "DARGAUD EDITEUR",
adresse: "Rue Moussorgski 15/27 75018 Paris France"
}, {
id: "6",
libelle: "CPE",
adresse: "Rue de l'évangile 73 75018 Paris France"
}, {
id: "7",
libelle: "SIPACK",
adresse: "Z.I. Gellainville Rue Joseph Cugnot 7 28630 Chartres France"
}, {
id: "8",
libelle: "URBAN COMICS",
adresse: "Rue Moussorgski 15/27 75018 PARIS France"
}];
演示 Fiddle
答案 1 :(得分:1)
select
有一个名为ng-options
的特殊重复。这就是您需要使用的而不是ng-repeat
。
<select name="livAdresse" ng-options="adr.libelle for adr in adresses" ng-model="livraison.toAdresse">
</select>
要选择默认值,您可以将其设置为控制器中的ng-model
:
$scope.liveraison.toAdresse = $scope.adresses[1]; // index 1 to select the CPE options
答案 2 :(得分:0)
我找到了解决方案。她非常强大,因为这种结构都可以实现它的功能! http://jsfiddle.net/EyBVN/48/
<div ng-app="" ng-controller="MyCtrl">
<div ng-repeat="livraison in livraisons">
{{livraison.libelle}} <select name="livAdresse" ng-model="livraison">
<option ng-repeat="adr in adresses" ng-selected="adr.id==livraison.toAdresse" value="{{adr.id}}" title="{{adr.adresse}}">{{adr.libelle}}</option>
</select> {{livraison.when}}
</div>
</div>
谢谢你的帮助:)
注意:这个解决方案很长时间没有用,因为我包含了jQuery库。该库无提示会产生兼容性问题。