如何将初始值设置为ng-model选项?

时间:2014-11-23 01:18:11

标签: angularjs

<select ng-model="sortOrder">
    <option value="country">Country (A-Z)</option>
    <option value="-country">Country (Z-A)</option>
</select>

控制器:

 $scope.sortOrder = ['-country', 'name'];

我设置了这样的东西。它起作用,但默认情况下select选项只是空的。我希望默认选择第一个选项,或者甚至只选择一些文本..基本上只有一个空的下拉列表。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:0)

您应该使用 ng-options

<select ng-model="selectedItem" ng-options=" item.name for item in items"></select>

现在在创建项目列表时设置默认选项,或者如果您动态获取项目列表,则可以将第一项目指定为默认项目,例如

$scope.items = [{'name': 'Select Item'},
                       {'name' : 'Google Calendar'},
                       {'name' : 'Jira'},
                       {'name' : 'Zendesk'}];

//This will set the default item as selected.
$scope.selectedItem = $scope.items[0];

让我知道它是否还不清楚。

答案 1 :(得分:0)

您可以使用&#34;选择&#34; init上的<option>属性:

<select ng-model="selecteditem">
<option ng-repeat="item in items" value="{{item}}" {{item===selecteditem ? 'selected' : ''}}></option>
</select>