我有一个包含以下3个项目的下拉列表:
100
200
300
使用AngularJS很容易完成。
HTML:
<select ng-model="selectedNumber"
ng-options="opt as opt.label for opt in myNumbers">
控制器:
$scope.myNumbers= [
{ label: '100', value: 100 },
{ label: '200', value: 200 },
{ label: '300', value: 300 }
];
$scope.selectedNumber = $scope.myNumbers[0];
现在新要求是在下拉列表中添加一个特殊选项
Add New Value ...
100
200
300
何时添加新价值......&#39;选中一个新对话框应该显示,以允许用户在下拉列表中添加新值。
如何实施此类下拉列表?
答案 0 :(得分:3)
为什么不自己创建这样的选项:
<select ng-model="selectedNumber">
<option>Add New Value</option>
<option ng-repeat="opt in myNumbers">{{opt.label}}</option>
</select>
或者创建一个函数,使用额外的元素返回数组,例如:
$scope.selectNumbers = function() {
return [{ label: 'Add New Value', value: -1 }].concat($scope.myNumbers.concat_;
}
并将其绑定到像这样选择
<select ng-model="selectedNumber"
ng-options="opt as opt.label for opt in selectNumbers()">