在javascript中导入xlsx文件时,如何手动强制javascript事件
How can I force javascript event manually while importing the xlsx file in Javascript?
我正在使用下面的代码片段导入Javascript中的xlsx文件。这段代码运行良好,我可以导入xlsx。作为添加的更改addEventListener
,每当我选择(选择)文件时,事件都会触发并导入文件。
<input type="file" name="xlfile" id="xlf" />
<br />
<input type="button" id="import" value="Import" />
//some other javascript code
var xlf = document.getElementById('xlf');
function handleFile(e) {
var files = e.target.files;
var f = files[0];
{
var reader = new FileReader();
var name = f.name;
reader.onload = function(e) {
var data = e.target.result;
var wb;
wb = X.read(data, {type: 'binary'});
process_wb(wb);
};
if(rABS) reader.readAsBinaryString(f);
else reader.readAsArrayBuffer(f);
}
}
if(xlf.addEventListener) xlf.addEventListener('change', handleFile, false);
但每当我点击导入按钮时,我都要导入文件。为此,我将上面的行替换为:
var import= document.getElementById('import');
if(import.addEventListener) import.addEventListener('click', handleFile, false);
在这种情况下,我无法获取handleFile(e)
方法中的输入文件。
变量名'import'是一个保留字。请尝试更改变量名称。
您可以从xlf变量访问所选文件。
var xlf = document.getElementById('xlf');
function handleFile(e) {
var files = xlf.files;
var f = files[0];
var reader = new FileReader();
var name = f.name;
reader.onload = function(e) {
var data = e.target.result;
var wb;
wb = X.read(data, {type: 'binary'});
process_wb(wb);
};
if(rABS)
reader.readAsBinaryString(f);
else
reader.readAsArrayBuffer(f);
}
同时更改"导入"变量的名称。Import是一个保留字,用于加载模块(ES2015中增加了新功能)。
var importButton = document.getElementById('import');
if (importButton.addEventListener)
importButton.addEventListener('click', handleFile, false);
相关文章:
- 在arcgis javascript中手动添加图形层的图例
- 在AngularJS中手动加载和卸载外部javascript
- 在javascript中导入xlsx文件时,如何手动强制javascript事件
- 手动将节点添加到JavaScript InfoVis Toolkit Force Directed Graph
- 如何从空td标记上的javascript(而不是jquery)手动触发onmousedown事件
- Javascript使用自定义按钮手动打开Kendo UI网格编辑器
- 手动配置值,并在JavaScript中更改框(圆)的颜色
- CefSharp javascript元素点击不;不起作用,但手动点击它可以
- 如何手动绑定两个javascript文件
- 将javascript解析器机械化以进行手动处理
- Javascript对象:这两个值有何不同
- 使用javascript手动更改表单/文本区域输入,并确保所有事件侦听器都已启动
- 如何使用Javascript手动调用CSS动画
- 如何使用调试工具在页面加载后手动加载 JavaScript 库
- Sencha Touch 2 它与我对 html5/javascript Web 开发的知识有何关系
- 如何从javascript手动触发工具提示和输入框
- 如何在Javascript中手动设置REFERER头
- 如何在javascript中手动抛出语法错误
- 在javascript中手动执行事件
- 转换yyyy-MM-ddTHH: mm: ss.在JavaScript中手动将fffZ转换为DateTime