Flexmonster - Navigate to URL on cell click
by Uaman23
HTML
<script src="https://s3.amazonaws.com/flexmonster/2.2/flexmonster.js"></script>
<script src="https://s3.amazonaws.com/flexmonster/2.3/flexmonster.js"></script>
<link rel="stylesheet" href="https://s3.amazonaws.com/flexmonster/2.3/demo.css">
<div id="pivot-container"></div>
CSS
.link {
text-decoration: underline;
cursor: pointer;
color: #fbee8f !important;
}
JavaScript
function addLinks() {
var i = 0;
if (pivot.getCell(i,0) == null) return;
while((cell = pivot.getCell(i,0) ).label != "") {
if(cell.member != null && cell.member.hierarchyName == "Country"){
addLinksForField(i,cell.member.hierarchyName);
}
i++;
}
}
function addLinksForField(num,uniqueName) {
$('[data-index='+num +']').parent().not(".fm-measure-header").find("span").each(function() {
$(this)
.addClass("link")
.attr("data-link", "http://flexmonster.com/?field="+uniqueName+"&key=" +$(this).text())
.click(onClick);
});
}
function onClick(e) {
e.stopImmediatePropagation();
console.log("click on", $(this).text(), $(this).attr("data-link"));
window.open($(this).attr("data-link"));
}
var pivot = $("#pivot-container").flexmonster({
componentFolder: "https://s3.amazonaws.com/flexmonster/2.3/",
width: "100%",
height: 430,
toolbar: true,
ready: function() {
$(".fm-sheet-data-canvas").on("DOMSubtreeModified", addLinks);
},
report: {
dataSource: {
dataSourceType: "csv",
filename: "data/data.csv"
},
slice: {
columns: [{
uniqueName: "Color"
}],
rows: [{
uniqueName: "Country"
}, {
uniqueName: "Destination"
}, {
uniqueName: "[Measures]"
}],
measures: [{
uniqueName: "Price",
}],
},
options: {
configuratorActive: false
}
}
});