2017-02-28 5 views
0

私はそこのボタンがあり、それがクリックされたときに、私がしたいので、反応的なフォームのフォームグループで複数のチェックボックスをプログラムでチェックする方法は?

usageRights : new FormGroup({ 
    all_usage : new FormControl(''), 
    digital  : new FormControl(''), 
    outdoor  : new FormControl(''), 
    print  : new FormControl(''), 
    radio  : new FormControl(''), 
    tv   : new FormControl('') 
}) 

のようなチェックボックスを定義した(モデルは駆動)

をAngular2 RC 5を使用して、反応性フォームを実装しようとしていますグループ内のすべてのチェックボックスをオンにします。私の現在の実装では、ボタンのクリックで機能を使用しているが、私は

checkAll(control, e) { 
    e.preventDefault(); 
    console.log(control); 
} 

controlが含まれていることformGroup(usageRights)である

マイcheckAll機能をファイル私のTSでこれらのチェックボックスをチェックすることができる方法を見つけ出すことはできませんすべてのチェックボックスをオンにし、正常にログを記録します。私はただ[checked]と組み合わせて変数を使用することができると信じて、ボタンをクリックしたときに変数を更新しますが、これを行う正しい方法ではないように感じます。

どうすればいいか教えてください。ハマった。

答えて

0

は、私は他の人が同じことに行き詰まったときにsetValue機能はここにこれを残しformControlプロトタイプ もっとここにドキュメントhttps://angular.io/docs/ts/latest/api/forms/index/FormControl-class.html

である

checkAll(control, e) { 
    e.preventDefault(); 

    for(let key in control.controls) { 
     control.controls[ key ].setValue(true); 
    } 
} 

をそれを考え出し

関連する問題