diff --git a/src/bonsai/bonsai/bim/data/webui/static/js/index.js b/src/bonsai/bonsai/bim/data/webui/static/js/index.js
index d4b6d7fb73..4d8c9083de 100644
--- a/src/bonsai/bonsai/bim/data/webui/static/js/index.js
+++ b/src/bonsai/bonsai/bim/data/webui/static/js/index.js
@@ -269,13 +269,7 @@ function addTableElement(blenderId, csvData, filename) {
},
});
- var downloadCsv = $('')
- .css("margin-left", "10px")
- .css("cursor", "pointer");
- tableTitle.append(downloadCsv);
- downloadCsv.on("click", function () {
- table.download("csv", "data.csv");
- });
+ createDownloadIcon(blenderId);
table.on("rowSelected", function (row) {
var index = row.getIndex(); // the guid of the object
@@ -301,6 +295,18 @@ function addTableElement(blenderId, csvData, filename) {
});
}
+function createDownloadIcon(blenderId) {
+ const table = Tabulator.findTable("#table-" + blenderId)[0];
+ const tableTitle = $("#title-" + blenderId);
+ var downloadCsv = $('')
+ .css("margin-left", "10px")
+ .css("cursor", "pointer");
+ tableTitle.append(downloadCsv);
+ downloadCsv.on("click", function () {
+ table.download("csv", "data.csv");
+ });
+}
+
// Function to update table and filename
function updateTableElement(blenderId, csvData, filename) {
// check if the headers are the same
@@ -329,6 +335,7 @@ function updateTableElement(blenderId, csvData, filename) {
}
}
$("#title-" + blenderId).text(filename);
+ createDownloadIcon(blenderId);
}
}