Я нахожусь в процессе работы над внутренним веб-сайтом, который должен будет извлекать данные исключительно из статических электронных таблиц XLSX (ежедневно обновляемых с помощью автоматизации).На этом сайте мне нужно будет разместить данные в виде таблицы и отсортировать / выполнить поиск.Я могу работать со специальными функциями самостоятельно (параметры поиска / сортировки) после того, как контент действительно отображается правильно.
Моя проблема: я понятия не имею, как получить содержимое для отображения после успешного запроса через AlaSQL.Я вижу содержимое в формате JSON на консоли, но я не программист JS и почти не знаю, как передать информацию, чтобы она правильно отображалась.
Я работаю на сервере сIIS 8, работающий на HTML / C # для базового кода веб-сайта, но также включающий в себя jQuery, инфраструктуру W3.CSS, библиотеку JS AlaSQL и зависимости (для чтения файлов Excel).
Как указано выше, у меня есть основа для работы - Alasql работает, и я получаю результаты из файла Excel, как и должен, но только на консоль.Из базового кода, приведенного ниже, я знаю, что он намеренно отправляет его на консоль, но я так хорошо разбираюсь в работе с JS, что не знаю, как хранить данные, чтобы их можно было извлекать и отображать в таблице в HTML..
У меня также есть jQuery, который, я надеюсь, поможет с форматированием таблицы файлов, если я смогу зайти так далеко [jquery-3.4.1 и jquery.tablesorter (https://mottie.github.io/tablesorter/docs/)].
<div class="w3-panel" id="OhYeah">
</div>
<script>
var ImportData = (alasql.promise('select * from xlsx("File.xlsx",{sheetid:"Sheet1"})')
.then(function(data){
console.log(data);
}).catch(function(err){
console.log('There was an error reading the source file.:', err);
}));
document.getElementById("OhYeah").innerHTML = ImportData
</script>
Итак, просто покопавшись, я нашел ресурс, который сказал, что приведенная выше строка «document.getElementByID» должна отображать данные в виде необработанной строки (так что я бы знал, что я хотя бы добился прогресса) - вместо этого я получаювывод "[обещание объекта]".
Я посмотрел другие ресурсы на этом сайте, у которых есть похожие запросы, но ни один из них точно не помог - это самый близкий вопрос, который я нашел, но попытка их кода не сработала. ( Таблица Excel в Html )
Конечный результат, к которому я стремлюсь, - пройти цикл содержимого и создать таблицу с требуемым содержимым. Я не могу найти какой-либоресурсы, которые имеют дело с выходом AlaSQL, которые объясняют это даже частично.Как и с большинством вещей, я могу понять это, если у меня есть хоть какой-то код для «обратного инжиниринга» в то, что я собираюсь сделать.
Есть мысли?
--- РЕДАКТИРОВАТЬ 6/ 18 ---
Итак, просто пытаясь проработать это логически, я продвигаюсь немного дальше, но все еще нуждаюсь в руководстве.Я изменил код так, чтобы он выглядел следующим образом:
<div class="w3-panel" id="OhYeah">
</div>
<script>
alasql.promise('select * from xlsx("File.xlsx",{sheetid:"Sheet1"})')
.then(function(data){
document.getElementById("OhYeah").innerHTML = (data)
//console.log(data);
}).catch(function(err){
console.log('There was an error reading the source file.:', err);
});
</script>
Теперь я получаю 755 (количество строк в моей электронной таблице) распечатки «[object Object]» на странице отображения..
[object Object],[object Object],[object Object],[object Object],
[object Object],[object Object],[object Object],[object Object],
[object Object],[object Object],[object Object],[object Object],
[object Object],[object Object],[object Object],[object Object], [...]