问题
By pressing Enter key need to submit the form in angular 4
below is my code in form Action = ""
is not working.
I also tried with (keydown) = domonething(event)
and (keydown.enter) = domonething(event)
with below code
keyDownFunction(event) {
if (event.keyCode == 13) {
this.submit();
}
}
Below is my current code
<form #f="ngForm" (ngSubmit)="f.form.valid && openModal(confirmationmodal)" novalidate action="">
<div class="form-group form-row">
<label class="col-form-label col-sm-4 col-md-4" for="name">Employee Name</label>
<div class="col-sm-8 col-md-8">
<span type="text" readonly class="form-control-plaintext" id="name">{{employeeDetails.EmployeeName}}</span>
</div>
</div>
<div class="form-group form-row">
<label class="col-form-label col-sm-4 col-md-4 " for="name">Manager Name</label>
<div class="col-md-8 col-sm-8">
<span type="text" readonly class="form-control-plaintext"
id="manager">{{employeeDetails.ManagerName}}</span>
</div>
</div>
<div class="form-group form-row">
<label for="name" class="col-sm-4 col-md-4 col-form-label">Subject</label>
<div class="col-md-8 col-sm-8">
<span type="text" readonly class="form-control-plaintext" id="manager">{{subject}}</span>
</div>
</div>
<button class="btn btn-success float-right" type="submit" id="submit">Submit</button>
</form>
回答1:
give (keyup.enter)="yourFunction()"
in your submit button
回答2:
From your form tag I would remove the action attribute and put the following:
<form #f="ngForm" (ngSubmit)="f.form.valid && openModal(confirmationmodal)" novalidate (keydown.enter)="onEnterKeyDown($event)">
Then simply writing the key down event's function:
onEnterKeyDown($event) {
// here you can open your confirmation modal if the form is valid
}
Source: https://alligator.io/angular/binding-keyup-keydown-events/
回答3:
this should work
(keydown)="keyDownFunction($event)
in typescript
keyDownFunction(event) {
if ( event.keyCode === 13) {
// do your function
}
}
this works for me. I think you've missed $ in front of event.
回答4:
If you want to invoke it with the button then you can do like this-
<button type="button" (keyup.enter)="doSomething()" >Click Me!</button>
See live here- https://stackblitz.com/edit/angular-3gf6hw
See more about it here- https://angular.io/guide/user-input#key-event-filtering-with-keyenter
来源:https://stackoverflow.com/questions/55334027/submitting-a-form-by-pressing-enter-key-in-angular-4