乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 请教如何用<em>JQuery</em>导入导出<em>excel</em&g

请教如何用<em>JQuery</em>导入导出<em>excel</em&g

作者:乔山办公网日期:

返回目录:excel表格制作


别瞎想了,zd不能。

jQuery说白了是 js ,要符合安全协议,js不能主动获得 cookie 意外的任何内容,

如果不想走后台,必须在浏览器上安装一个插件,实现前台解析,当然这个插件可以是C#或者java等等。

如果想走后台就容易多了,前台上传你的excel到后台,后台解析后再传递给前台,前台展示。

用jtable 插件,表单很容易导出各种格式的数据。
使用table2excel表格插件需要在页面中引入jquery和jquery.table2excel.js文件。
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.table2excel.js"></script>

HTML结构
你可以将任何标准的HTML表格结构的数据导出到Excel中,一个HTML表格的结构为:
<table>
<thead>
<tr class="noExl">
<td>带<code>noExl</code>class的行不会被输出到excel中</td>
<td>带<code>noExl</code>class的行不会被输出到excel中</td>
</tr>
<tr>
<td>这一行会被导出到excel中</td>
<td>这一行会被导出到excel中</td>
</tr>
</thead>
<tbody>
<tr>
<td>单元格1-1</td>
<td>单元格1-2</td>
</tr>
<tr>
<td>单元格2-1</td>
<td>单元格2-2</td>
</tr>
<tr>
<td>单元格3-1</td>
<td>单元格3-2</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2">合并2个单元格</td>
</tr>
</tfoot>
</table>

如果表格中的某一行不需要导出到Excel中,可以为这一行添加.noExl class类,该class类会在插件初始化时通过参数被指定为不被导出的数据。
初始化插件
在页面DOM元素加载中完毕之后,可以通过下面的方法来初始化table2excel插件。
$("#table2excel").table2excel({
// 不被导出的表格行的CSS class类
exclude: ".noExl",
// 导出的Excel文档的名称
name: "Excel Document Name",
// Excel文件的e79fa5e98193e4b893e5b19e365名称
filename: "myExcelTable"
});

配置参数
table2excel插件的可用配置参数有:
exclude:不被导出的表格行的CSS class类。
name:导出的Excel文档的名称。
filename:Excel文件的名称。
exclude_img:是否导出图片。
exclude_links:是否导出超链接
exclude_inputs:是否导出输入框中的内容。


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script type="text/javascript" src="xlsx.core.min.js"></script>
<script>
window.onload=function(){
$('#excel-file').change(function(e) {
var files = e.target.files;

var fileReader = new FileReader();
fileReader.onload = function(ev) {
try {
var data = ev.target.result,
workbook = XLSX.read(data, {
type: 'binary'
}), // 以二进制流方式读取得到整份excel表格对象
persons = []; // 存储获取到的数据
} catch (e) {
console.log('文件类型不正确');
return;
}

// 表格的表格范围,可用于判断表头是否数量是否正确
var fromTo = '';
// 遍历每张表读取
for (var sheet in workbook.Sheets) {
if (workbook.Sheets.hasOwnProperty(sheet)) {
fromTo = workbook.Sheets[sheet]['!ref'];
console.log(fromTo);
persons = persons.concat(XLSX.utils.sheet_to_json(workbook.Sheets[sheet]));
// break; // 如果只取第一张表,e799bee5baa6e79fa5e98193e4b893e5b19e333就取消注释这行
}
}

console.log(persons);
//将persons赋值给要展示的表格数组里即可展示在界面
};

// 以二进制方式打开文件
fileReader.readAsBinaryString(files[0]);
});
}
</script>
</head>
<body>
<input type="file" id="excel-file">
</body>
</html>

还有就是存在数据库里再拿出来显示。

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网