angularjs 下拉框多选实现
时间: 2024-12-08 21:24:37 浏览: 16
在AngularJS中,实现下拉框或多选框的多选功能通常使用ngModel和ngOptions指令。ngOptions用于动态生成选项列表,ngModel则用于双向数据绑定,即用户的选择会实时反映到模型上,模型的变化也会同步更新视图。
以下是一个简单的例子:
```html
<!-- HTML模板 -->
<select multiple ng-model="selectedItems" ng-options="item.name as item.label for item in items">
</select>
<!-- JavaScript控制器部分 -->
angular.module('app').controller('MyController', function($scope) {
$scope.items = [
{ name: 'Option 1', label: 'Label 1' },
{ name: 'Option 2', label: 'Label 2' },
// 更多选项...
];
});
```
在这个例子中:
- `multiple`属性使得下拉框支持多选。
- `ng-model="selectedItems"`绑定选择了哪些项到JavaScript控制器的`selectedItems`数组。
- `ng-options="item.name as item.label for item in items"`动态生成选项,每个option显示`name`对应的`label`文本。
当你改变`selectedItems`数组,HTML下拉框的内容会自动更新;反之,当用户在下拉框中选择或取消选择项目,`selectedItems`的值也会相应变化。
阅读全文