数据目标无法按预期工作

时间:2017-11-02 07:52:36

标签: angular typescript

当我点击添加图标时,我正在尝试实现引导模式。

但默认情况下data-target="#myModal"正在设置。点击后,数据目标也会更改为data-target

我希望默认情况下将myModal设置为数据目标,并根据我要将myModal更改为alertModalpublic checkUnassigned() { let eArray = this.pListComponent.evtNumber; if (eArray.length > 0) { this.modalName = "alertModal"; } else { this.modalName = "myModal"; } }的条件。

Image Reference

我被困在这里。请帮忙

<a class="icon-links"><i *ngIf="(selectedStatus == '01')" class="npt-icon-add icon-states" aria-hidden="true" 
                data-toggle="modal" [attr.data-target]="'#' + modalName"  (click)="checkUnassigned()"></i></a>
<label class="checkbox"><input type="checkbox" class="serviceable_check_1" id="serviceable1" name="condition_of_materials[]" onclick="checkOnlyOne(1,obj); return false;" ><span> Serviceable</span></label>

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式进行操作。但是你必须经常检查pListComponent.evtNumber值。我不能做那部分(由于缺少你的总代码),但建议你使用&#39; ngDoCheck&#39; (explanation)以每当pListComponent.evtNumber更改时,它必须触发checkUnassigned()函数。

古德勒克!

isAlertModal:boolean = false;
public checkUnassigned() {
  let eArray = this.pListComponent.evtNumber;
  if (eArray.length > 0) {
    this.isAlertModal = true;
  } else {
    this.isAlertModal = false;
  }
}


<a class="icon-links">
    <i *ngIf="((selectedStatus == '01') && (isAlertModal==false))" class="npt-icon-add icon-states" aria-hidden="true" 
        data-toggle="modal" [attr.data-target]="#myModal"  (click)="checkUnassigned()"></i>

    <i *ngIf="((selectedStatus == '01') && (isAlertModal==true))" class="npt-icon-add icon-states" aria-hidden="true" 
        data-toggle="modal" [attr.data-target]="#alertModal"  (click)="checkUnassigned()"></i>
</a>