我有行列表,每行有两个以上的按钮.我想在点击事件上禁用按钮,所以一旦完成ajax调用,我就可以重新启用它或完全隐藏它.
所以我想知道如何在点击事件上禁用此单个按钮.
如何禁用事件?
<button [disabled]="buttondisabled" (click)="trigger($event)"> trigger ($event) { $event.buttondisabled = true; // ? }
解决方法
<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); }