javascript - Alasql 从上传按钮导入与文件 onchange 事件导入

标签 javascript html alasql

我试图弄清楚如何从文件输入将文件导入到 ALASQL 中。有关于如何执行此操作的文档,但我的客户希望在选择文件时必须按加载按钮。

这是来自 ALASQL 的文档:

<script src="xlsx.core.min.js"></script>
<p>Select CSV file to read:&lt;/p>
<input id="readfile" type="file" onchange="loadFile(event)"/>
<script>
    function loadFile(event) {
        alasql('SELECT * FROM FILE(?,{headers:true})',[event],function(data){
            // Process data here
        });
     }
</script>

https://github.com/agershun/alasql/wiki/How%20to%20upload%20form%20for%20txt%20and%20xlsx%20in%20javascript

我的客户想要这样的东西:

<script src="xlsx.core.min.js"></script>
<p>Select CSV file to read:&lt;/p>
<input id="readfile" type="file"/>
<button onclick="loadfile()">Load</button>
<script>
    function loadFile() {
        var file=document.getElementById('readfile').files[0]
        alasql('SELECT * FROM FILE(?,{headers:true})',[file],function(data){
            // Process data here
        });
     }
</script>

我尝试了各种方法来实现这一目标,但到目前为止还没有任何效果。我尝试过的一些方法包括创建自定义 jQuery 事件和上面的示例。

我发现一篇 SF 文章提出了类似的问题,但没有得到答复。 Loading CSV file with AlaSQL and JQuery

谢谢

最佳答案

我想到的一个答案是将加载文件进程分成两个函数,如下所示:

<script src="xlsx.core.min.js"></script>
<p>Select CSV file to read:&lt;/p>
<input id="readfile" type="file" onchange="loadfile(event)"/>
<button onclick="loadfile2()">Load</button>
<script>
    var loadFileTempData=[];
    function loadFile() { //load data file into variable
        var file=document.getElementById('readfile').files[0]
        alasql('SELECT * FROM FILE(?,{headers:true})',[file],function(data){
            loadFileTempData=data;
        });
     }
     function loadFile2(){ //process data from variable
         var data=loadFileTempData;
         loadFileTempData=[];
         // Process data here
     }
</script>

关于javascript - Alasql 从上传按钮导入与文件 onchange 事件导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38904272/

相关文章:

javascript - 使用 JavaScript 制作图像序列动画

javascript - 主干过滤收集和分发

html - 我正在为我的 <th> 留边距...但它不起作用

ASP.NET -HTML 表格行默认字体

javascript - 通过保留数据类型将数据从 JSON 导出到 excel

javascript - Express js 渲染无需替换 html 标签(如 <p>)

javascript - 在 html 页面中渲染 react 组件

javascript - 获取图像变量 src 属性

javascript - 如何在 AlaSQL 中创建时间字段

angularjs - 如何使用 ALASQL 和 XLSX 设置自定义 header 名称