Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

html table inside ngbTooltip

I am using angular 4 with bootstrap 4 and ng-bootstrap. I have a requirement where when user hovers over an info icon, a html table should be displayed as right tooltip. This is the line of code where I am using the tool tip:

<i class="fa fa-info-circle" aria-hidden="true" style="margin-top: auto; color: skyblue; padding-bottom: 5px;" placement="right" ngbTooltip="Tooltip on right"></i>

Right now, if I hover over the icon I only get the content mentioned in ngbTooltip. I tried putting html code, something like ngbTooltip="<h1>Test Content</h1>" but it just displays everything as text and not h1

I searched SO also, many people suggested to use jquery plugin for this, but am afraid, I am not allowed to use jquery plugin here. So, is there anyway I can get a html table here on hover or any other work around??

TIA

like image 566
Bijay Singh Avatar asked May 31 '17 04:05

Bijay Singh


1 Answers

You should pass TemplateRef to ngbTooltip directive to display html inside tooltip.

<ng-template #htmlContent>
  <table>
    <tr *ngFor="let item of items">
      <td>{{ item.name }}</td>
      <td>{{ item.value }}</td>
    </tr>
  </table>
</ng-template>
<i class="fa fa-info-circle" placement="right" [ngbTooltip]="htmlContent"></i>

Plunker Example

I would recommend always looking for an answer in the documentation

https://ng-bootstrap.github.io/#/components/tooltip

like image 110
yurzui Avatar answered Sep 30 '22 00:09

yurzui