1. First Method
you have to assign null or empty string here
this.searchValue = null;
//or
this.searchValue=" ";
Working Plunker
because no event is being fired from angular change detection. so you have to assign some value either null or string with space
2. Second Method
- use of
[(ngModel)]it should work withngModel.
why ?
because as you did binding with value attribute which is only property binding not event binding. so
angular doesn’t run change detection because no event relevant to Angular is fired. If you bind to an event then Angular runs change detection and the binding works and value should be changes.
see working example of same with ngModel
Working Example with ngModel