class mvwizExcel{
//----------------------------------------- 시작 ------------------------------------------
constructor(id,config){
this.config = config;
this.id = id;
this.uid = id+"-uniqid-01";
let styleValue = $('#'+id).attr("style");
let nameValue = $('#'+id).attr("name");
let value = $('#'+id).val();
let uploadlink = encodeURIComponent(this.config.upload);
let columnslink = encodeURIComponent(this.config.columns);
this.config.width = this.config.width||"400px";
$('#'+id).replaceWith(`
`);
mvwizExcel_cellParsing(this.uid);
}
}
function mvwizExcel_cellParsing(uid) {
let value = $('#'+uid+'-value').val();
let data = JSON.parse(value);
// Check if data is empty
if (data.length === 0 || data[0].length === 0) {
$('#'+uid+'-frame').empty();
$('#'+uid+'-frame').append(`No data available
`); // Display a message if no data
return;
}
// Create table element
var table = $('');
// Create header row
var headerRow = $('
');
var numColumns = data[0].length;
headerRow.append($(' | ').addClass('column-header')); // Top-left empty corner cell
// Create column headers A, B, C, ...
for (var i = 0; i < numColumns; i++) {
var columnHeader = $(' | ').text(String.fromCharCode(65 + i)).addClass('column-header');
headerRow.append(columnHeader);
}
table.append(headerRow);
// Create data rows with row headers 1, 2, 3, ...
data.forEach(function(rowData, index) {
var row = $('
');
var rowHeader = $(' | ').text(index + 1).addClass('row-header');
row.append(rowHeader);
rowData.forEach(function(cellData) {
var td = $(' | ').text(cellData);
row.append(td);
});
table.append(row);
});
// Append the table to the frame
$('#'+uid+'-frame').empty();
$('#'+uid+'-frame').append(table);
}