2017-02-20 7 views
-1

Я хочу использовать выражение внутри OnClick, как это:Можно ли использовать выражение (например, :{{i}}) внутри onclick?

<div *ngFor="let student of studentList;let i=index;"> 
    <div id="studentDetail{{i}}">Details....</div> 
    <div onclick="(function(){ 
    document.getElementById('studentDetail{{i}}').hidden=true; 
    })"</div> 
</div> 

Я не хочу использовать (щелчок) = ..., как это необходимо изменить файл .ts, но это кажется неправильным, потому что он показывает пустую страницу, можно ли использовать выражение внутри следующим образом:

document.getElementById('studentDetail{{i}}').hidden=true; 

?

+0

* Я не хочу использовать (щелчок) = ..., как это необходимо для изменения. ts file *. Зачем? Не можете ли вы изменить файл * component *? Кроме того, вы могли бы объяснить больше своей ситуации ... может быть, есть еще один способ сделать это. – developer033

ответ

1

Это должно быть реализовать так,

<div *ngFor="let student of studentList;let i=index;"> 
    <div *ngIf="!student.hidden">Details....</div> 
    <div onclick="hideStudentDetail(student)"></div> 
</div> 

и в компоненте

hideStudentDetail(){ 
    student.hidden=true; 
}