当ngoptions数据异步绑定时,将空选项作为默认选择

时间:2015-01-13 11:42:14

标签: javascript angularjs ng-options

我在控制器中异步绑定了ngoptions数组。当我用它创建一个选择时,会创建一个空选项。我该如何避免?

<select  data-ng-model="order.employee" ng-options="employee._id as employee.name for
    employee in employeess"> </select>

我的控制器代码

Employees.query(function(employees){
    $scope.employees = employees
});

如何避免创建空选择?我尝试过ng-init但它没有用

enter image description here

2 个答案:

答案 0 :(得分:2)

那是因为你没有初始化你的模型。 您必须为ng-model =&#34; order.employee&#34;设置默认值。在你的控制器中。 像:

$scope.order.employee = -1

并且您的选择应该具有以下结构:

<select  data-ng-model="order.employee" ng-options="employee._id as employee.name for
    employee in employeess"> 
   <option value="-1">Click to Select<option>
</select>

答案 1 :(得分:2)

解决方案

(1)您可以创建空白选项。默认选择此项。

$scope.order.employee = -1

<select  data-ng-model="order.employee" ng-options="employee._id as employee.name for
    employee in employeess"> 
   <option value="-1">--Select--<option>
</select>

(2)您可以选择第一个选项

Employees.query(function(employees){
    $scope.employees = employees
    $scope.order.employee = employees.length ? employee[0]._id : -1
});
相关问题