フォームをリセットする最もクリーンな方法
2023-09-03 02:38:16
質問
Angular 2最新版でフォームをリセットする最もきれいな方法は何ですか?投稿を追加した後に入力テキストボックスをリセットしたいと思います。
@Component({
selector: 'post-div',
template: `
<h2>Posts</h2>
<form (submit)="addPost()">
<label>Title: </label><input type="text" name="title" [(ngModel)]="title"><br/>
<label>Body: </label><input type="text" name="body" [(ngModel)]="body"><br/>
<input type="submit" value="Add Post">
</form>
<ul>
<li *ngFor="let post of posts">
<strong>{{post.title}}</strong>
<p>{{post.body}}</p>
</li>
</ul>
`,
providers: [PostService]
});
addPost(){
this.newPost = {
title: this.title,
body: this.body
}
this._postService.addPost(this.newPost);
}
どのように解決するのですか?
への参照を追加します。
ngForm
ディレクティブを追加すると、フォームにアクセスできるようになります。
.resetForm()
.
<form #myForm="ngForm" (ngSubmit)="addPost(); myForm.resetForm()"> ... </form>
...あるいは関数にフォームを渡す。
<form #myForm="ngForm" (ngSubmit)="addPost(myForm)"> ... </form>
addPost(form: NgForm){
this.newPost = {
title: this.title,
body: this.body
}
this._postService.addPost(this.newPost);
form.resetForm(); // or form.reset();
}
との違いは
resetForm
そして
reset
は、前者がバリデーションと同様にフォームフィールドをクリアするのに対し、後者はフィールドのみをクリアします。使用方法
リセットフォーム
を使い、そうでない場合は
リセット
.
上記がうまくいかない人のために別の例を追加する .
ボタン押しで。
<form #heroForm="ngForm">
...
<button type="button" class="btn btn-default" (click)="newHero(); heroForm.resetForm()">New Hero</button>
</form>
上記と同様に、フォームを
newHero
関数に渡すこともできます。
関連
-
[解決済み] Angular 4/5/6 グローバル変数
-
[解決済み] Angularでコンポーネントをリフレッシュする方法
-
[解決済み] タイプスクリプト タイプ X はタイプ Y の length、pop、push、concat、その他 26 のプロパティが欠落しています。[2740]
-
[解決済み] 文字列|ヌル'型の引数は、文字列'型のパラメータに代入できません。タイプ 'null' はタイプ 'string' に割り当てられません。
-
[解決済み] AngularでFormArrayからすべての項目を削除する
-
[解決済み] 子ルートから親ルートに移動するにはどうしたらいいですか?
-
[解決済み] Angular2 Tutorial (Tour of Heroes)です。モジュール 'angular2-in-memory-web-api' を見つけることができません。
-
[解決済み] angular 4 ユニットテストエラー `TypeError: ctor is not a constructor`.
-
[解決済み] Angular2 ルーターがクエリ文字列を保持する
-
[解決済み] Angular 2 コンポーネントコンストラクタとOnInitの比較 [重複]。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] コンポーネントクラスからテンプレート参照変数にアクセスする
-
[解決済み] ng serve がファイルの変更を自動的に検出しない
-
[解決済み] プロパティ 'X' はプライベートであり、クラス 'xyzComponent' 内でのみアクセス可能です。
-
[解決済み] Angular CLIで特定のバージョンのAngularをインストールするには?
-
[解決済み] ルーターナビゲートで同じページのngOnInitを呼び出さない
-
[解決済み] Angular / Angular Materialでmat-horizontal-stepperのステップをプログラムで移動させることは可能ですか?
-
[解決済み] Angular2 bodyタグにクラスを追加する
-
[解決済み] Error: モジュールによってインポートされた予期しない値 'undefined'。
-
[解決済み] aria-valuenow' は 'div' の既知のプロパティではないため、バインドできません。
-
[解決済み] Angular2で生のhtmlをバインドする方法 [重複]。