Angular 2:如果html中的attr.title = =组件中的数组

时间:2016-10-31 20:10:57

标签: html arrays if-statement angular

<div class="kalender">
    <table *ngIf="datoer">
        <tr>
            <td *ngFor="let cell of ukeEn()" 
                [attr.title]="cell.id">{{cell.text}}</td>
                </div>
        </tr>
    </table>
</div>

我想检查attr.title(或cell.id)== any of the element's .dato attribute(元素是名为Cell的类型元素,属性为dato }}在一个名为datoer的数组中,它在我的组件中定义。因此,我需要针对attr.title数组中的每个值检查datoer。然后,如果此条件为div,我想在p中添加一个元素(例如tdtrue)。

这可能吗? 如果您需要更多代码来了解我的问题,请询问。

1 个答案:

答案 0 :(得分:4)

<div class="kalender">
    <table *ngIf="datoer">
        <tr>
            <td *ngFor="let cell of ukeEn()" [attr.title]="cell.id">
               <div *ngIf="datoerContains(cell)">{{cell.text}}</div>
            </td>            
        </tr>
    </table>
</div>

在你的组件中输入:

datoerContains(cell:any):boolean {
   for(let i = 0; i < this.datoer.length; i++) {
      if (this.datoer[i].dato == cell.dato) {
         return true;
      }
   }
   return false;
}