AngularJS下拉默认值为空

时间:2015-11-19 18:55:40

标签: angularjs

我正在表中显示数据库中的数据。其中一个表列存储true / false。我将此列显示为下拉列表,但该值不是默认为数据库值。默认值为空。

JS

$scope.options = [{ label: 'false', val: false }, { label: 'true', val: true }];

$ scope.usersList = users

HTML

<tr ng-repeat = "user in usersList">
 <td>
                    <select ng-model="user.admin"
                            ng-options="opt as opt.label for opt in options">
                        <option value="{{user.admin}}">{{user.admin}}</option>
                    </select>
</td>
</tr>

页面来源

<td>
                    <select ng-model="user.admin" ng-options="opt as opt.label for opt in options" class="ng-pristine ng-valid ng-touched"><option value="?" selected="selected"></option><option label="false" value="object:15">false</option><option label="true" value="object:16">true</option></select>
                </td>

3 个答案:

答案 0 :(得分:0)

默认情况下,选择ng选项为空白。你可以初始化它:

$scope.user.admin = options[0];

答案 1 :(得分:0)

基本上,确保user.admin的值映射到ng-options中的值以设置默认值并处理空白选项。

Why does AngularJS include an empty option in select?

答案 2 :(得分:0)

你只需要像这样初始化$ scope.user.admin:

$scope.user.admin = true;

或者像这样

$scope.user.admin = false;

看看这个小提琴 - http://jsfiddle.net/r9sb53zv/