如何使用角度限制下拉列表仅选择一个值
How to restrict dropdown to choose only one value using angular?
我有一个下拉列表,其中的选项来自使用 ng-repeat 的数组。它正在正常下拉工作。但我想要一种不同的方式。如果选择一个选项,则应在其他下拉列表中禁用该选项。我们可以在角度中做到这一点吗?
<div ng-app="myApp" ng-controller="MyCtrl">
<div ng-repeat="address in addresses">
Billing State:
<select
ng-model="address.state"
ng-options="state.lookupCode as state.description for state in lov_state"></select>
<tt>State selected: {{address.state}}</tt>
</div>
</div>
控制器代码:
var myApp = angular.module('myApp', []);
myApp.controller('MyCtrl', function($scope) {
$scope.addresses = [
{'state': 'AL'},
{'state': 'CA'},
{'state': 'FL'}
];
$scope.lov_state = [
{'lookupCode': 'AL', 'description': 'Alabama'},
{'lookupCode': 'FL', 'description': 'Florida'},
{'lookupCode': 'CA', 'description': 'California'},
{'lookupCode': 'DE', 'description': 'Delaware'}
];
});
请帮助我做到这一点。这是jsfiddle链接。
https://jsfiddle.net/santhosh1a32/3vd7hyrq/
您可以使用ng-options
it 本身中提供disable
的选项,方法是在关键字之前的位置使用 disable when condition
for
。
<div ng-repeat="address in addresses">
Billing State:
<select ng-model="address.state" ng-change="checkSelected(address.state)"
ng-options="state.lookupCode as state.description disable when (address.state != state.lookupCode && state.selected) for state in lov_state">
</select>
<tt>State selected: {{address.state}}</tt>
</div>
在这里演示
相关文章:
- 在Twitter BootStrap嵌套下拉列表中托管一个选择列表(IE 9特定)
- HTML-使用mysql.php生成一个选择框.我怎样才能更改“;值“;生成的选择框选项的
- 我如何创建一个选择器,就像jQuery有jQuery()或$()一样
- 如何根据另一选择中的选择设置一个选择中的文本
- 正在尝试创建一个选择选项
- 在javascript中动态添加一个选择下拉菜单
- 当用户设置另一个选择值时,如何通过 Javascript 设置另一个选择值
- 从另一个选择框并使用数据库连接填充选择框
- 使用jquery创建并复制一个选择框
- 进行一个选择,自动发送表单并打开另一个选择(CodeIgniter)
- 使用jquery克隆一个选择菜单
- Jquery #id ul li 一个选择
- Chrome:在用户打开一个选择后添加选项
- 如果所有单选框在jQuery中都有一个选择,则显示一个元素
- 从select中选择一个选项,然后使用Codeigniter在另一个选择框上显示数据
- 将选择下拉列表发送到另一个选择下拉列表
- JQuery以基于另一个选择列表填充选择列表
- 在填充另一个选择框时动态添加选择框
- 两个表单,一个选择/下拉框-需要将选择值从一个表单复制到另一个表单
- 根据第一个选择框中选择的内容筛选下一个选择框的值