问题是:
我有编辑表单,该表单更新了模型user
的某些属性
单击更新后,我使用表格重置
休息,但清理所有输入
并且我发送了带有重置的用户模型,但是它不起作用
模板HTML:
<form #editForm="ngForm" (ngSubmit)="updateUserInfo()" class="form">
<input
type="text"
id="projectinput1"
class="form-control"
name="fname" [(ngModel)]="user.name" />
<input
type="text"
id="projectinput2"
class="form-control"
style="direction: ltr !important;text-align: left;"
name="lname"
[(ngModel)]="user.phoneNumber" />
<input
type="text"
id="companyName"
class="form-control"
name="company"
[(ngModel)]="user.city" />
<textarea
id="projectinput8"
rows="5"
class="form-control"
name="comment"
[(ngModel)]="user.address">
</textarea>
<button
type="submit"
[disabled]="!editForm.dirty"
class="btn btn-success">
<i
class="icon-note">
</i> ذخیره
</button>
</form>
组件:
export class ProfileComponent implements OnInit {
@ViewChild('editForm', {
static: false
}) editForm: NgForm;
user: User;
constructor() {}
ngOnInit() {
this.loadUser();
}
loadUser() {
this.route.data.subscribe(data => {
this.user = data.user;
});
}
updateUserInfo() {
console.log(this.user);
this.editForm.reset(this.user);
}
}
答案 0 :(得分:2)
尝试以下this.editForm.reset()
:
updateUserInfo() {
console.log(this.user);
this.editForm.reset();
}
答案 1 :(得分:0)
那对我不起作用 但是使用这个
this.editForm.form.markAsPristine();
我想要的工作
答案 2 :(得分:0)
具有表单
<form #editForm ="ngForm">
...
<button type="button" class="btn btn-default" (click)="newHero(); editForm.reset()">New Hero</button>
</form>
带有.ts
this.editForm.reset();