How to add hyperlink to Primeng data column, angular 2 way
I am using Primeng datatable in my project setup. But I want the first column of all rows to be a hyperlink, so I can link them to the next pages using [routerLink] (angular 2 way). I am completely unable to achieve this ...
Is there a way to get around this in primeng ..?
Thanks in advance!
+5
source to share
3 answers
I'm your real maseeaha, try this, it works:
<p-dataTable [value]="cars">
<p-column *ngFor="let col of cols" [field]="col.field" [header]="col.header">
<template let-row="rowData" pTemplate>
<span *ngIf="col.header==='Vin'"><a style="color:blue;" routerLink="/prbDetails/{{row.vin}}">{{row[col.field]}}</a></span>
<span *ngIf="col.header!=='Vin'">{{row[col.field]}}</span>
</template>
</p-column>
</p-dataTable>
+7
source to share
Your Maseeha is back :)
Hope this solution can help you :)
<p-dataTable [value]="data" [rows]="50" [rowsPerPageOptions]="[500,1000,2000]" [paginator]="true" [pageLinks]="5" sortMode="single" reorderableColumns="true" scrollable="true" scrollHeight="200px" [globalFilter]="gb" #dt exportFilename="search" styleClass="styles">
<p-column field="name" header="Name" [sortable]="true">
<ng-template let-col let-data="rowData" pTemplate="body">
<span><a [routerLink]='["pageName"]' [queryParams]='{key1:data["Your Value"],key2:data["Your Value"]}' style="color: blue;">{{data["Your Value"]}}</a></span>
</ng-template>
</p-column>
</p-dataTable>
+2
source to share
You should do something like this:
<td *ngFor="let col of columns">
<span *ngIf="col.header==='Opportunity'"><a routerLink="/prbDetails/{{rowData.opportunityId}}">{{rowData[col.field]}}</a></span>
<span *ngIf="col.field==='dcn'"><a routerLink="/prbDetails/{{rowData.dcn}}">{{rowData[col.field]}}</a></span>
<span *ngIf="col.header!=='Opportunity' && col.field!=='dcn'">{{rowData[col.field]}}</span>
</td>
Hope this helps !!!
Hurray, Nitin
0
source to share