我在网页上有一个SlickGrid,我正在尝试添加一个按钮来调用函数CreateXLSX()。当我在Main.jade中编辑代码时,我输入:
input(type = 'button', value = 'SaveXLSX', onclick = 'createXLSX();')
createXLSX()函数是:
var inputData = getData();
var ws_name = "SheetJS";
var wb = Workbook(), ws = sheet_from_array_of_arrays(data);
wb.SheetNames.push(ws_name);
wb.Sheets[ws.name] = ws;
var result = XLSX.write(wb, {bookType: 'xlsx',
bookSST:false, type: 'binary'});
saveAs(new Blob([s2ab(result)],
{type: "application/octet-stream"}), "Test.xlsx);
}
当我在FireBug的控制台窗口中执行createXLSX()时,解析工作正常。它会创建一个包含网格中所有数据的.xlsx文件。但是当我使用按钮时,我收到错误:
wb.Workbook is undefined
当我刷新页面时,会弹出打开/保存控制台,就像创建.xlsx文件一样,尽管有错误。当按钮被点击时,我需要代码,以提示用户在我没有使用控制台运行该功能时它是如何做的。 任何人都知道我为什么会收到这个错误?
答案 0 :(得分:1)
我的代码在没有启用FireBug的情况下工作正常。出于某种原因,FireBug认为wb.Workbook存在致命错误。但是没有FireBug,一切都顺利进行。如果有人知道为什么那么我愿意听取反馈。