ng-options在数组中被禁用

时间:2018-05-20 04:32:08

标签: angularjs ng-options ng-controller

我有一个观点,在一个时期(三个月或一个学期)管理学校的考试。每个学期都可以进行许多类型正常的测试,但只有一个类型为examen。

我在jsFiddle中创建了一个脚本,显示了我正在寻找的行为https://jsfiddle.net/dfLf9zkm/

不同之处在于,在ng-repeat中,每个测试都有一个ng-controller,因此每次调用ng-method时,它只影响我所在的行,而不影响其余的行。像

这样的东西
<div ng-app="app" ng-controller="Controller">
    <table>
        <tr>
            <th>Type</th>
            <th>Ponderation</th>
        </tr>
        <tr ng-repeat="test in tests track by test.id" ng-controller="TestRow">
            <td><select ng-model="test.type" ng-options="type.id as type.type disable when type.id == 2 && hasExam && idExam!=test.id for type in types" ng-change="checkTests()"></select>
            </td>
            <td>{{test.ponderation}}%</td>
        </tr>
    </table>
</div>

如果我使用TestRow控制器内的方法更改$ scope.hasExam的值,它只影响该行而不影响其余行。我该怎么办?

1 个答案:

答案 0 :(得分:-1)

我最终决定将所有内容保留在一个控制器中并修复所有内容