I tried to build my first login form with Angular 4.0.0 with Material 2. But the Form won't submit and trigger the function.
<form #UserLogin="ngForm" *ngIf="active" (ngSubmit)="onSubmit(UserLogin.value)">
<md-input-container>
<input mdInput [(ngModel)]="data.email" ngControl="email" name="email" placeholder="Benutzername" type="text" required>
</md-input-container>
<md-input-container>
<input mdInput [(ngModel)]="data.password" ngControl="password" name="password" placeholder="Passwort" type="password" required>
</md-input-container>
<button md-button class="submit-btn" type="submit" [disabled]="!UserLogin.form.valid">Login!</button>
The Submit function:
onSubmit(value: any) {
console.log('sdfdfg');
Object.assign(value, this.additionalData);
this.submitted = true;
this.auth.login(value).subscribe(
data => {
this.loginSuccess.emit(data);
},
error => {
for (const field in this.formErrors) {
if (this.formErrors.hasOwnProperty(field)) {
this.formErrors[field] = [];
if (this.validationMessages[field].hasOwnProperty(error.systemCode)) {
this.formErrors[field].push(this.validationMessages[field][error.systemCode]);
}
}
}
}
);
}
When i click the login button, he does not print the console log into the console. Any idea why?
change button type="button"
<form #UserLogin="ngForm" (ngSubmit)="onSubmit(UserLogin)">
<md-input-container>
<input mdInput [(ngModel)]="data.email" name="email" placeholder="Benutzername" class="form-control" type="text" required>
</md-input-container>
<md-input-container>
<input mdInput [(ngModel)]="data.password" name="password" class="form-control" placeholder="Passwort" type="password" required>
</md-input-container>
<button md-button class="submit-btn" type="button" [disabled]="!UserLogin.form.valid">Login!</button>
</form>
onSubmit(form: ngForm) {
console.log('sdfdfg');
console.log(form.value);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With