我想禁用 AngularJS 下拉列表中的特定选项。
它应该在下拉列表中列出,但不应允许选择它。所以我需要禁用它。
MyFile.tpl.html
<select class="form-control" ng-model="selectedFruits"
ng-options="fruit as fruit.name for fruit in fruits">
</select>
MyController.js
$scope.fruits = [{'name': 'apple', 'price': 100},{'name': 'guava', 'price': 30},
{'name': 'orange', 'price': 60},{'name': 'mango', 'price': 50},
{'name': 'banana', 'price': 45},{'name': 'cherry', 'price': 120}];
这里所有的水果名称都应该列在下拉列表中,但是 mango 和 cherry 应该被禁用并且不允许用户选择它。
这可能吗?如果可能的话,请告诉我解决方案。
最佳答案
select
选项被 disabled
属性禁用。由于 ng-options
不支持禁用,您必须在 ng-repeat
中生成选项并设置 ng-disabled根据要求。
模板:
<select class="form-control" ng-model="selectedFruits">
<option
ng-repeat="fruit in fruits"
ng-disabled="disabledFruits.indexOf(fruit.name) !== -1"
ng-value="fruit">
{{fruit.name}}
</option>
</select>
内部 Controller :
$scope.disabledFruits = ["mango", "cherry"]
JSBin .
关于javascript - 如何禁止从 Angular JS 下拉列表中选择特定选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22005601/