2017-06-08 3 views
0

In Such-Eingabefeld, wenn Keyup-Ereignis ausgelöst wird, Daten zeigen, nach Keyup-Ereignis ist wieder Feuer Klick-Ereignis funktioniert, aber ich möchte einmal keyup oder klicken wird andere ausgelöst wird nicht arbeiten.verhindern Standard-Click-Ereignis, wenn Keyup-Ereignis in angular2

Hier ist meine Form in header.html

<form> 
    <div class="box"> 
     <div class="container-1"> 
      <input type="search" id="search" placeholder="Type 
       your search..." name="searchStr" (keyup.enter)="searchKey(input.value)" 
       [(ngModel)]="searchStr" #input> 
      <a (click)="searchKey(input.value)"><img 
       src="/assets/search.png" class="search-img"></a> 
     </div> 
    </div> 
</form> 

Hier ist meine header.component.ts

searchKey(value: any) { 
    console.log(value); 
    this.router.navigate(['search', { searchkey : value }]); 
} 

Ihnen im Voraus danken.

Antwort

0

Versuchen Sie, ein Flag-Variable zu setzen, wird überprüft, ob in dem gesucht werden oder nicht,

export ... { 

    flag = true; 

    searchKey(value: any) { 
     console.log(value); 
     this.flag && this.router.navigate(['search', { searchkey : value }]); 
     this.flag=false; 
    } 

    // don't forget to add a condition when flag must be set to true. 
} 

Hope this Ihnen helfen.

Verwandte Themen