2016-06-30 2 views
0

の選択に応じてdesabled作り方:/はdesabled enter image description here入力テキストが、私はこのテーブル持って/有効に選択されたチェックボックス

私の問題は、私は私が選択した行のチェックボックスをチェックすると、それが有効になりたいということですが"モンタント"入力、これは私の試みですが、それは動作しません 私はすべての行をアクティブにする!

<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> 

、これはコントローラ内の関数である:

$scope.changeMontantLBL =function($index){ 

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

ので、どのように私は私のコードは、有効/入力「Montant」を作るために選択された行のチェックボックスの選択のための おかげによってdesabled修正することができますしてくださいあなたが直接入力テキストボックスのng-disabledに「finalOperationsList[$index].checked」の値を消費し、完全にng-changescope.montantBLを削除することができます

答えて

1

を助けます。

<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"を使用する必要があることに注意する価値があります。

あなたはちょうどそれがチェックされているかどうかを検出するためにあなたのNG-変更方法で値そのものバウンドNG-モデル(解答[item.questID])を使用することができ
<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> 
+0

感謝サー:) – user3821206

1

:あなたはまたにその行のコードを簡素化することができますか否か。

例: - お返事卿のために助けを

<input type="checkbox" ng-model="answers[item.questID]" ng-change="stateChanged(item.questID)" /> <!-- Pass the specific id --> 

$scope.stateChanged = function (qId) { 
if($scope.answers[qId]){ //If it is checked 
    alert('enable or disable input'); 
} 

}

+0

感謝:) – user3821206

関連する問題