JSFiddle - React, Tailwind, and code Playground
by Flexmonster Pivot Table
HTML
<link rel="stylesheet" href="https://s3.amazonaws.com/flexmonster/2.3/demo.css">
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<button onclick="clearCustomizing()">Clear links</button>
<button onclick="startCustomizing()">Add links</button>
<div id="pivot-container"></div>
CSS
.link {
text-decoration: underline !important;
cursor: pointer;
color: #726b04 !important;
}
JavaScript
let pivot = new Flexmonster({
container: "#pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
width: "100%",
height: 600,
toolbar: true,
customizeCell: customizeCellFunction,
report: {
dataSource: {
dataSourceType: "microsoft analysis services",
/* URL to msmdpump.dll */
proxyUrl: "https://olap.flexmonster.com/olap/msmdpump.dll",
/* Catalog name */
catalog: "Adventure Works DW Standard Edition",
/* Cube name */
cube: "Adventure Works"
},
"slice": {
"rows": [
{
"uniqueName": "[Geography].[Geography]",
"sort": "asc"
}
],
"columns": [
{
"uniqueName": "[Product].[Category]",
"sort": "asc"
},
{
"uniqueName": "[Measures]"
}
],
"measures": [
{
"uniqueName": "[Measures].[Reseller Order Count]",
"aggregation": "none",
"active": true
},
{
"uniqueName": "[Measures].[Discount Amount]",
"aggregation": "none",
"active": true
}
]
}
}
});
function preventExpand(e) {
e.stopImmediatePropagation();
}
function customizeCellFunction(cell, data) {
if (data.hierarchy && data.hierarchy.uniqueName == "[Geography].[Geography]" && data.member) {
var parts = cell.text.split(data.escapedLabel);
if (parts.length == 2) {
cell.text = parts[0] + "<a href='https://en.wikipedia.org/wiki/" + data.member.caption + "' target='_blank' class='link' onclick='preventExpand(event)'>" + data.escapedLabel + "</a>" + parts[1];
} else {
cell.text = "<a href='https://en.wikipedia.org/wiki/" + data.member.caption + "' target='_blank' class='link' onclick='preventExpand(event)'>" + data.escapedLabel + "</a>";
}
}
}
function clearCustomizing() {
pivot.customizeCell(null);
}
function...