[解決済み】FormBuilderコントロールの値を手動で設定する。
2022-04-04 03:14:37
質問
このせいで気が狂いそうだ。今緊急で、もう丸一日これに費やす余裕はない。
コンポーネント内でコントロール値('dept')を手動で設定しようとしていますが、うまくいきません。新しい値もコンソールに正しく記録されます。
以下はFormBuilderのインスタンスです。
initForm() {
this.form = this.fb.group({
'name': ['', Validators.required],
'dept': ['', Validators.required],
'description': ['', Validators.required],
});
}
選択されたdeptを受信するイベントハンドラです。
deptSelected(selected: { id: string; text: string }) {
console.log(selected) // Shows proper selection!
// This is how I am trying to set the value
this.form.controls['dept'].value = selected.id;
}
フォームが送信され、ログアウトすると
this.form
フィールドは空白のままです。 他の人が
updateValue()
しかし、これはベータ.1であり、コントロール上で呼び出す有効なメソッドとは思えません。
を呼び出そうとしたこともあります。
updateValueAndValidity()
は成功しませんでした :(.
私なら、ただ
ngControl="dept"
を、フォームの他の部分でやっているように、カスタムディレクティブ/コンポーネントを使用します。
<ng-select
[data]="dept"
[multiple]="false"
[items]="depts"
(selected)="deptSelected($event)" <!-- This is how the value gets to me -->
[placeholder]="'No Dept Selected'">
</ng-select>
解決方法は?
更新日 19/03/2017
this.form.controls['dept'].setValue(selected.id);
OLD:
今のところ型キャストをせざるを得ない。
(<Control>this.form.controls['dept']).updateValue(selected.id)
あまりエレガントでないのは同感です。将来のバージョンで改善されることを期待します。
関連
-
[解決済み] HTML5です。2つの入力を持つスライダーは可能か?
-
[解決済み] フォーム型Webサイト認証の決定版【終了しました
-
[解決済み] インデックスを属性値とするngFor
-
[解決済み] 入力フィールドの値を設定する
-
[解決済み] Angularで変更検知を手動でトリガーする
-
[解決済み】HTMLフォームのaction属性に空のURLを使用するのは良い方法ですか?(action="")
-
[解決済み】Postman Chromeです。form-data、x-www-form-urlencoded、rawの違いは何ですか?
-
[解決済み】FormBuilderコントロールの値を手動で設定する。
-
[解決済み】HTML5の "required "属性をチェックボックスのグループに使用する?
-
[解決済み] Razorで "Html.BeginForm "を記述する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Angular 2: formGroup は FormGroup のインスタンスを期待します。1つを渡してください。
-
[解決済み] HTML5です。2つの入力を持つスライダーは可能か?
-
[解決済み] 使用用途
-
[解決済み] フォーム型Webサイト認証の決定版【終了しました
-
[解決済み】GETメソッドとPOSTメソッドはいつ使うべきですか?両者の違いは何ですか?
-
[解決済み】チェックしたラジオボタンのラベルをCSSセレクタで指定する方法
-
[解決済み】FormBuilderコントロールの値を手動で設定する。
-
[解決済み】Chromeの開発ツールのネットワークタブに表示される「リクエストペイロード」と「フォームデータ」の違いとは?
-
[解決済み] HTML5 の input type="text" と input type="search" の比較
-
[解決済み] Razorで "Html.BeginForm "を記述する方法