我有这张桌子:
javascript - 如何根据所选复选框的选择启用/禁用输入文本-LMLPHP

我的问题是我想如果我选中选中行的复选框,它将启用/禁用“ Montant”输入,这是我的尝试,但是它永远无法正常工作
我激活了所有行!

    <table>
                            <thead>
                                <tr>

                                    <th >
                                      <input type="checkbox" />
                                    </th>
                                    <th>Montant</th>
                                </tr>
                            </thead>
                            <tbody ng-model="finalOperationsList">
                                <tr ng-repeat="item in finalOperationsList track by $index ">
                                    <td class="TableHeaderalignment"><input type="checkbox"
                                        ng-model="finalOperationsList[$index].checked" ng-change="changeMontantLBL($index)"/></td>
                                    <td class="TableHeaderalignment">
                                       <input type="text" class="form-control" value="{{item.montant}}" ng-disabled="montantBL" />
                                    </td>

                                </tr>
                            </tbody>
                        </table>


这是Controller中的功能:

 $scope.changeMontantLBL =function($index){

                      if(true){
                          $scope.montantBL = false;
                      }
                      else{
                          $scope.montantBL = true;
                      }
                  }


因此,请根据所选行复选框的选择,如何更正我的代码以使输入“ Montant”启用/禁用
感谢帮助

最佳答案

您可以直接在输入文本框的finalOperationsList[$index].checked中使用“ ng-disabled”的值,然后完全删除ng-changescope.montantBL

<tr ng-repeat="item in finalOperationsList track by $index ">
    <td class="TableHeaderalignment"><input type="checkbox"
        ng-model="finalOperationsList[$index].checked"/></td>
    <td class="TableHeaderalignment">
       <input type="text" class="form-control" value="{{item.montant}}" ng-disabled="finalOperationsList[$index].checked" />
    </td>
</tr>


还应注意,您可能误用了value="{{item.montant}}",应改用ng-model="item.montant"。您还可以将该行的代码简化为:

<tr ng-repeat="item in finalOperationsList track by $index ">
    <td class="TableHeaderalignment">
        <input type="checkbox" ng-model="item.checked"/></td>
    <td class="TableHeaderalignment">
        <input type="text" class="form-control" ng-model="item.montant" ng-disabled="item.checked"/>
    </td>
</tr>

09-25 21:34