概述
1、兼容IE:
layui table.js修改源代码(地址:https://github.com/sentsin/layui ): lay/module/table.js
修改: table.exportFile 方法
/**
* 修复IE不能下载的问题,支持IE10以上,此处是额外增加的代码,数据读取沿用table组件原有代码,为了尽量不破坏原来的代码,故此处会显得有些冗余。
*/
if (device.ie && navigator.msSaveBlob) {
var dataTitle = [], dataMain = [];
layui.each(data, function (i1, item1) {
var vals = [];
if (typeof id === 'object') { //ID直接为表头数据
layui.each(id, function (i, item) {
i1 == 0 && dataTitle.push(item || '');
});
layui.each(table.clearCacheKey(item1), function (i2, item2) {
vals.push(item2);
});
} else {
table.eachCols(id, function (i3, item3) {
if (item3.field && item3.type == 'normal' && !item3.hide) {
i1 == 0 && dataTitle.push(item3.title || '');
vals.push(item1[item3.field]);
}
});
}
dataMain.push(vals.join(','))
});
var filedata = "ufeff" + dataTitle.join(',') + 'rn' + dataMain.join('rn');
if(fileName) {
navigator.msSaveBlob(new Blob([decodeURIComponent(encodeURI(filedata))], {type: 'text/csv;charset=utf-8;'}), (config.title || fileName + (config.index || '')) + '.' + type);
}else {
navigator.msSaveBlob(new Blob([decodeURIComponent(encodeURI(filedata))], {type: 'text/csv;charset=utf-8;'}), (config.title || 'ajjkbb' + (config.index || '')) + '.' + type);
}
return true;
}
// 以下是原代码
alink.href = 'data:'+ textType +';charset=utf-8,ufeff'+ encodeURIComponent(function(){
2、表格导出自命名
① table.exportFile添加新参数: fileName
table.exportFile = function(id, data, type, fileName){}
②table.exportFile 内部导出js修改:
if(fileName) {
navigator.msSaveBlob(new Blob([decodeURIComponent(encodeURI(filedata))], {type: 'text/csv;charset=utf-8;'}), (config.title || fileName + (config.index || '')) + '.' + type);
}else {
navigator.msSaveBlob(new Blob([decodeURIComponent(encodeURI(filedata))], {type: 'text/csv;charset=utf-8;'}), (config.title || 'ajjkbb' + (config.index || '')) + '.' + type);
}
③前段导出方法调用
$(document).on('click','#export',function(){
var data = [];
table.exportFile(['标题','案件类型','立案日期'], data , "xls", "文件名");
}
最后
以上就是害羞棉花糖为你收集整理的layui 表格导出兼容IE,以及文件名自命名的全部内容,希望文章能够帮你解决layui 表格导出兼容IE,以及文件名自命名所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复