使用制表符进行多个 html table 下载时遇到问题?
having troubles with making a multiple html table download using tabulator?
我可以使用制表符在一页上呈现两个 table。现在我需要将两个 tables 导出到一个 excel 工作簿(不同的 sheets)。
我尝试了文档中提供的示例,但未能成功。
头标签内包含脚本
{{-- tabulator links --}}
<link rel="stylesheet" href="css/tabulator/tabulator_simple.css" rel="stylesheet">
<link rel="stylesheet" href="css/tabulator/tabulator_custom.css" rel="stylesheet">
<script src="js/tabulator/tabulator.min.js"></script>
{{-- XLSX Script Includes --}}
<script type="text/javascript" src="http://oss.sheetjs.com/js-xlsx/xlsx.full.min.js"></script>
在我放置的 body 标签内:
<br />
<input class="btn btn-default" type="button" id="download-xlsx" value="Download Excel">
<br />
{{-- tabulator table --}}
<br> table-1 caption <br />
<div id="tableOne" style="margin-top:15px"></div>
<br> table-2 caption <br />
<div id="tableTwo" style="margin-top:15px"></div>
这就是我在脚本标签中的内容
//define data
var one = {!!$one!!}
//define table
var table = new Tabulator("#tableOne", {
data:one,
autoColumns:true,
height:"500px",
layout:"fitDataFill",
selectable:true,
clipboard:true,
});
//define data
var two = {!!$two!!}
//define table
var table = new Tabulator("#tableTwo", {
data:two,
autoColumns:true,
height:"500px",
layout:"fitDataFill",
// layout:"fitColumns",
selectable:true,
clipboard:true,
});
//trigger download of data.xlsx file
var sheets = {
"sheetA": "#tableOne",
"sheetB": "#tableTwo",
};
$("#download-xlsx").click(function(){
table.download("xlsx", "AllData.xlsx", {sheets:sheets});
});
单击下载按钮时,excel 工作簿打开需要 2 sheet 秒。首先 sheet 包含拳头 table,没关系。但是第二个 sheet 是空的。为什么会这样?
请看这个demo你需要把table变量放在你要下载的表格变量中创建一个空的table0来合并和下载它们
var sheets = {
"Example Data1": table1,
"Example Data2": table2
};
downloadXlxs = function(){
table0.download("xlsx", "data.xlsx", {sheets:sheets});
};
我可以使用制表符在一页上呈现两个 table。现在我需要将两个 tables 导出到一个 excel 工作簿(不同的 sheets)。
我尝试了文档中提供的示例,但未能成功。
头标签内包含脚本
{{-- tabulator links --}}
<link rel="stylesheet" href="css/tabulator/tabulator_simple.css" rel="stylesheet">
<link rel="stylesheet" href="css/tabulator/tabulator_custom.css" rel="stylesheet">
<script src="js/tabulator/tabulator.min.js"></script>
{{-- XLSX Script Includes --}}
<script type="text/javascript" src="http://oss.sheetjs.com/js-xlsx/xlsx.full.min.js"></script>
在我放置的 body 标签内:
<br />
<input class="btn btn-default" type="button" id="download-xlsx" value="Download Excel">
<br />
{{-- tabulator table --}}
<br> table-1 caption <br />
<div id="tableOne" style="margin-top:15px"></div>
<br> table-2 caption <br />
<div id="tableTwo" style="margin-top:15px"></div>
这就是我在脚本标签中的内容
//define data
var one = {!!$one!!}
//define table
var table = new Tabulator("#tableOne", {
data:one,
autoColumns:true,
height:"500px",
layout:"fitDataFill",
selectable:true,
clipboard:true,
});
//define data
var two = {!!$two!!}
//define table
var table = new Tabulator("#tableTwo", {
data:two,
autoColumns:true,
height:"500px",
layout:"fitDataFill",
// layout:"fitColumns",
selectable:true,
clipboard:true,
});
//trigger download of data.xlsx file
var sheets = {
"sheetA": "#tableOne",
"sheetB": "#tableTwo",
};
$("#download-xlsx").click(function(){
table.download("xlsx", "AllData.xlsx", {sheets:sheets});
});
单击下载按钮时,excel 工作簿打开需要 2 sheet 秒。首先 sheet 包含拳头 table,没关系。但是第二个 sheet 是空的。为什么会这样?
请看这个demo你需要把table变量放在你要下载的表格变量中创建一个空的table0来合并和下载它们
var sheets = {
"Example Data1": table1,
"Example Data2": table2
};
downloadXlxs = function(){
table0.download("xlsx", "data.xlsx", {sheets:sheets});
};