36

view.html

<div>{{text}}</div>

The question is that 'text' has HTML that I wish to be displayed as it should but it only shows the HTML tags and text.

What can I do to render such content?

I've tried the earlier version (Ionic 1/2) solutions and nothing seems to work with Ionic v3.

sebaferreras
  • 44,206
  • 11
  • 116
  • 134
sam_v
  • 494
  • 1
  • 5
  • 12

3 Answers3

81

You should use the innerHTML attribute binding like this:

<div [innerHTML]="text"></div>

Please take a look at the Angular docs for more information.

sebaferreras
  • 44,206
  • 11
  • 116
  • 134
  • 1
    Edit: innerHTML works too - but fully non-capitalized does not. – sam_v Jun 26 '17 at 15:26
  • 1
    it works for me in other case, : i had used Youtube API, which comes with encoded texts like &quote; . but this solution give me original symbol which exactly I want. Thanks bro,,, – shurvirpm Nov 16 '19 at 09:57
0

in case you want to write it in paragraph you can do that by

<p><span [innerHTML]="htmlObject"></span></p>
<p><span>"{{title}}" is the <i>interpolated</i> title.</span></p>
<p>"<span [innerHTML]="title"></span>" is the <i>property bound</i> title.</p>

<p><img src="{{heroImageUrl}}"> is the <i>interpolated</i> image.</p>
<p><img [src]="heroImageUrl"> is the <i>property bound</i> image.</p>
Muhammad Tahir
  • 2,351
  • 29
  • 25
0

<div [innerHTML]="text">

This solution works but some css not work in a html. Like we got proper data from backend but not applicable into innerhtml .