2016-03-02 36 views
5

Ho una lista di righe e ogni riga ha altri 2 pulsanti in più. Voglio disabilitare l'evento button on click, quindi una volta chiamata ajax, posso riattivarla o nasconderla completamente.ionic2 + angular2 - pulsante di disattivazione al momento del clic

Quindi mi chiedo come disattivare questo singolo pulsante sull'evento click.

Come disattivare l'evento?

<button [disabled]="buttonDisabled" (click)="trigger($event)"> 

trigger ($event) 
{ 
    $event.buttonDisabled = true; // ? 
} 

risposta

4
<div *ngfor="#row of rows"> 
    <button [disabled]="awaitingAjaxCall[row] ? true : null" (click)="trigger($event, row)"> 
</div> 
rows: [0,1,2]; 
awaitingAjaxCall:boolean[] = [false, false, false]; 
trigger ($event, row) 
{ 
    this.awaitingAjaxCall[row] = true; 
    this.http.get(...).map(...).subscribe(value => { 
    this.value = value; 
    // or here 
    // this.awaitingAjaxCall[row] = false; 
    }, error => {}, 
() => this.awaitingAjaxCall[row] = false); 
} 
+0

La tua domanda è un solo pulsante. Quali sono gli altri pulsanti? Quale (i) vuoi abilitare/disabilitare? –

+0

sulla mia domanda dice. Ho una lista di righe e ogni riga ha 2 o più bottoni. ogni pulsante è selezionabile (dopo aver fatto clic, deve essere disabilitato fino alla chiamata ajax) – Basit

+0

Tutti i pulsanti della riga in cui è stato fatto clic su un pulsante? –

Problemi correlati