Я добавляю HTML-элементы во время выполнения, когда пользователь нажимает кнопку.
Я делаю это, устанавливая внутренний html-файл div для встроенной строки, а затем использую DOMSanitizer.
Визуально это выглядит хорошо, но события click в новом HTML не связаны, поэтому ничего не работает, я думаю, потому что HTML генерируется после компиляции.
Вот код, вызываемый, когда пользователь нажимает, чтобы добавить новый компонент (он заполняется правильными данными), кто-нибудь может подсказать, как мне подключить его к событию щелчка на изображении для удаления?
html на странице:
<div class="col-sm-9" >
<div [innerHtml]="contentHtml"></div>
</div>
код:
async AddText(contentText: string) {
this.htmlToAdd = this.htmlToAdd + ( '<br> <div class="card text-left">' +
'<div class="card-header text-secondary">Attraction Text' +
'<img align="right" class="image-hover pull-right table-header-padding" src="assets/images/LockLineIcon.png" />' +
'<img #delete class="image-hover float-right text-danger icon-pad draft-icon-indent" src="assets/images/DeleteIcon.png" (click)="this.delete(0)"/>' +
'</div>' +
'<div class="card-body" >' +
'<textarea id="text" name="text" type="text" class="form-control" required maxlength="2048" >' + contentText + '</textarea>' +
'</div>' +
'<div class="card-footer">' +
'<img align="right" class="pull-right table-header-padding" src="assets/images/DragUpDownIcon.png" />' +
'</div>' +
'</div>');
this.contentHtml = this.sanitizer.bypassSecurityTrustHtml(this.htmlToAdd);
}