У меня есть простой выпадающий список в моем пользовательском интерфейсе, и если пользователь изменяет этот компонент, таблица jexcel также должна изменить свои данные. Я ожидаю очистить таблицу и получить измененные значения, но то, что произошло в моем случае, это просто создание нового экземпляра таблицы, а не очистка существующих данных.
Вот мой пример кода:
<select class="custom-select form-control" id="tempSel" onchange="templateChange()"></select>
<div id="spreadsheet" style="margin-left:10px; margin-top:10px"></div>
JS:
function displayOutput(data, headers, width) {
table = jexcel(document.getElementById('spreadsheet'), {
data: data,
colHeaders: headers,
colWidths: width,
allowInsertColumn: false,
csvHeaders: true,
tableOverflow: true,
tableHeight: '650px',
});
}
function templateChange() {
template = $("#tempSel").val();
if (template == 0) {
$.get("/Db/getData1", { 'table': 0 })
.done(function (res) {
data = res.data;
console.log(data);
displayOutput(data, ['NAME', 'AGE', 'GENDER'], [200, 200, 200]);
});
} else if (template == 1) {
$.get("/Db/getData2", { 'table': 1 })
.done(function (res) {
data = res.data;
console.log(data);
displayOutput(data, ['TYPE', 'SIZE', 'JOB'], [220, 220, 220]);
});
}
}