2017-06-28 3 views
0

他の要素が表示されていない場合、ng-modelの値をリセットする要素チェックボックスがあります。私からしてみれば。 ng-showは自分のチェックボックスを隠すだけですが、コントローラのオブジェクトには反映されません。他の要素が表示されているかどうかを反映するng-modelのチェックボックス

<select ng-model="item.myOption" convert-to-boolean> 
    <option value="false" selected>Option false</option> 
    <option value="true">Option true</option> 
</select> 
<input type="checkbox" ng-model="item.myChecked" ng-show="item.myOption"> 
+1

「他の要素」は何ですか? "ng-showは自分のチェックボックスのみを隠す"? –

+0

@CharlieNg(私の英語については申し訳ありません)、selectオプションがfalseの場合はチェックボックスを非表示にしたいが、その値をfalseに設定する。私のオプションが真であるかどうかだけをチェックできます(このパラメータをサービスに渡す必要があります)。あなたは今理解しましたか? –

答えて

1

あなたは真または偽またはnullのいずれかにチェックボックスのモデル値を設定することが可能な、選択フィールドのNG-変化に小さな関数を書くことができます。

app.controller('myCtrl', function($scope) { 
    $scope.item = {myOption: "true"} 
    $scope.myCheckbox = true; 
    $scope.changed = function() { 
    if($scope.item.myOption == "false") { 
     $scope.myCheckbox = false; 
    } else { 
     $scope.myCheckbox = true; 
    } 
    } 
}); 

http://plnkr.co/edit/ekNxZImNIBisBCrfZsFS?p=preview

同様に、あなたは(など、ユーザーが日付ピッカーを使用して彼のDOBを選択した直後ageフィールド値を求めるように)任意の依存フィールドの値を変更することができます。スイッチケースは、変更機能の中ではなく、大規模な値のセットのどちらでも使用できます。

+0

ありがとう@Shantanu :) –

関連する問題