如何在文本区域中显示html字符串(html标记)作为内容?

时间:2019-07-11 12:55:25

标签: javascript angular typescript

我想在div标签中显示html标签,所以我用过,

<p [innerHTML]="data"> // data is a html tags for ex: h1 tag
</p>

它工作正常,但是如果我想在文本区域中打印, 它不是翻译html代码并直接打印html代码 喜欢,

<textarea  rows="4" cols="50">
    {{data}}
</textarea>

这是正在进行code的堆叠闪电战,

3 个答案:

答案 0 :(得分:1)

<textarea>是输入元素,您不能在其中绑定HTML标签,例如<b><i>

要绑定数据,请从打字稿中删除此HTML标记,然后使用<textarea>将其绑定在[(ngModel)]

尝试这样:

<textarea  rows="4" cols="50" [(ngModel)]="data">
</textarea>

答案 1 :(得分:0)

这是不可能的,您要查找的是内容可编辑的div。看一下这个fiddle,但基本上您需要(只需将其翻译为Angular)即可:

<div contenteditable="true">This is the first line.<br>
    See, how the text fits here, also if<br>there is a <strong>linebreak</strong> at the e nd?
    <br>It works nicely.
    <br>
    <br><span style="color: lightgreen">Great</span>.
</div>

答案 2 :(得分:0)

这个问题已经在堆栈闪电中得到了答案, Rendering HTML inside textarea

您正在做的是,将div标签设置为可编辑