2016-03-02 60 views
5

我有行列表,每行有兩個更多的按鈕。我想禁用點擊事件按鈕,所以一旦它完成ajax調用,然後我可以重新啓用它或完全隱藏它。ionic2 + angular2 - 點擊禁用按鈕

所以我想知道如何禁用單擊事件這個單一的按鈕。

如何禁用事件?

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

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

回答

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

你的問題只有一個按鈕。其他按鈕是什麼?你想啓用/禁用哪一個?在我的問題上說它是 –

+0

。我有行的列表,每行有2個或更多的botton。每個按鈕都是可點擊的(點擊後,它需要被禁用,直到ajax調用) – Basit

+0

單擊按鈕的行的所有按鈕? –