如何使用ng-选项设置SELECT元素的默认值

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (36)

这是一个对象:

{
    "type": "select", 
    "name": "Service",
    "value": "Service 3", 
    "values": [ "Service 1", "Service 2", "Service 3", "Service 4"] 
}

html(工作):

<select><option ng-repeat="value in prop.values">{{value}}</option></select>

然后,我尝试在SELECT元素中添加一个ng选项属性来设置prop.value作为默认选项(不起作用)。

ng-options="(prop.value) for v in prop.values"

我做错什么了?

提问于
用户回答回答于

因此,假设该对象在您的范围内:

<div ng-controller="MyCtrl">
  <select ng-model="prop.value" ng-options="v for v in prop.values">
  </select>
</div>
function MyCtrl($scope) {
  $scope.prop = {
    "type": "select", 
    "name": "Service",
    "value": "Service 3", 
    "values": [ "Service 1", "Service 2", "Service 3", "Service 4"] 
  };
}

Plunkr工作:http://plnkr.co/EDIT/wTRXZYEPrZJRizEltQ2g

用户回答回答于

如果你看看script.js,你会看到:

function MyCntrl($scope) {
  $scope.colors = [
    {name:'black', shade:'dark'},
    {name:'white', shade:'light'},
    {name:'red', shade:'dark'},
    {name:'blue', shade:'dark'},
    {name:'yellow', shade:'light'}
  ];
  $scope.color = $scope.colors[2]; // Default the color to red
}

这是html:

<select ng-model="color" ng-options="c.name for c in colors"></select>

这似乎是在<select>ng-options。此外,如果您有不同的标签/值,它也会工作。

扫码关注云+社区