2017-02-01 13 views
-1

私のチェックボックスとして表現オブジェクトの配列を持って、私はそのチェックを(それの値がデータベースから設定されている)場合は、チェックボックスを無効にしたいコントローラでチェックボックスをオンにすると、チェックボックスがオフになっていますか?

<md-input-container ng-repeat="tab in allTabs"> 
          <md-checkbox checklist-model="pop.tabs" checklist-value="tab" ng-disabled="disableCheckbox(this)"> 
           {{tab.name}} 
          </md-checkbox> 
         </md-input-container> 

$scope.disableCheckbox = function (chk) { 
     if (chk.isChecked) 
      return true; 
     else 
      return false; 
    } 

が、これを無効にすべてのチェックボックス!

は、私が代わりにchk.checkedを使用する必要があります

EDIT、それは動作しますが、問題は、チェックボックスがチェックされると、それは、無効だ私はこの動作を変更することができるということですか?

+0

データ形式が不明です。 'tab'オブジェクトには何が入っていますか? 'checklist-model'とは何ですか? 'checklist-value'?それらは標準的な指令ではありません... –

+0

私はこの指令を使用しています。https://vitalets.github.io/checklist-model/ 'tab'は' name'のようなデータを含んでいます。 'description'' dateCreated'、何も特別なものはありません –

答えて

-2

なぜなら、ng-disabled機能を使用しているからです。ダイジェストサイクルごとに機能がチェックされます。

私のアドバイスは、あなたのタブオブジェクトでプロパティ "isChecked"を作成し、ng-clickに設定してng-disableを次のようにしておくことです: ng-disabled = "!tab.isChecked" 。

よろしくお願いします。

関連する問題