我正在div的innerHTML中搜索一个字符串,并想要设置一个跨度。我的方法没有任何错误是行不通的。怎么了?
HTML
<div class="resultText" #txt></div>
JS
...
@ViewChild('txt') txt: ElementRef;
...
this.txt.nativeElement.innerHTML = text;
...
var query = 'test';
this.highlight(query);
highlight(query) {
var c = this.txt.nativeElement.innerHTML;
c.replace(new RegExp(query, "gi"), match => {
console.log('query: ' + query);
return '<span class="highlightText">' + match + '</span>';
});
}
答案 0 :(得分:1)
您没有将替换后的文本分配回innerHTML
this.txt.nativeElement.innerHTML = c.replace(new RegExp(query, "gi"), match => {
console.log('query: ' + query);
return '<span class="highlightText">' + match + '</span>';
});