angular - How to focus ion-searchbar on button click -


i trying focus ion-searchbar on button click not working. code

typescript

@viewchild('search') search:elementref;  focusbutton(){        console.log(this.search);   //searchbar {_config: config, _elementref: elementref, _renderer: rendereradapter, _componentname: "searchbar", _mode: "md", …}        console.log(this.search.nativeelement); //  null        this.search.nativeelement.focus();      //  cannot read property 'focus' of undefined         this.search.nativeelement.setfocus();      // cannot read property 'setfocus' of undefined  } 

html

<ion-searchbar #search (ioncancel)="cancelsearch($event)" [showcancelbutton]="true" [(ngmodel)]="artists"></ion-searchbar>         <ion-buttons end>             <button [hidden]="showsearch" (click)="(showsearch = !showsearch) && focusbutton()" ion-button icon-only>               <ion-icon  name="search"></ion-icon>             </button>         </ion-buttons> 

the console output above in comments code.

hope can using below code.just try using settimeout shown below.

.html

<ion-searchbar #search (ioncancel)="cancelsearch($event)"  [showcancelbutton]="true" [(ngmodel)]="artists"></ion-searchbar>  <ion-buttons end>    <button [hidden]="showsearch" (click)="(showsearch = !showsearch) && focusbutton()" ion-button icon-only>     <ion-icon  name="search"></ion-icon>   </button> </ion-buttons> 

.ts

@viewchild('search') search : any;  focusbutton(): void {     settimeout(() => {       this.search.setfocus();     }, 500);   } 

Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -