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


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


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







All Articles