我正在尝试禁用每个“部分”中已选择的选项(使用每个ng-repeat循环重置),但我无法弄清楚如何最好地解决这种情况。
我知道我应该使用'禁用时'但是无法弄清楚如何创建(数组?)或跟踪每个选择选项的时间(并且在该ngRepeat循环中禁用其他选择。我需要允许在“section。”部分中选择相同的选择选项。
非常感谢任何建议。提前致谢! 我通过实例学习得最好,希望这对学习AngularJS的其他人有益。
正如此羽毛球所见:Plunker
我有以下AngularJs标记
-1
答案 0 :(得分:2)
您可以对disable when condition
使用禁用语法ng-options
, documentation here (按关键字快速搜索:disable when
)。
ng-options="item.name disable when item.name==='2' for item in items track by item.itemid"
<强> UPD:强>
根据您的情况,您可以使用object
的键维护sectionid
(易于设置并通过sectionid获取),并为每个部分动态生成每个{{1}的禁用条件} element。
select
每次更改某个部分的// object looks like this
$scope.sectionSelectedItem = {
1: [
concition1, // for first select of sectionid(1)
concition2, // for second select of sectionid(1)
...
],
2: [
concition1, // for first select of sectionid(2)
concition2, // for second select of sectionid(2)
...
],
...
}
元素时,您都可以按select
生成当前部分的条件数据。
Plunker demo。