• 保存到桌面  加入收藏  设为首页
HTML5

js-table表格导出excel-长数字导出后变成科学计数法处理

时间:2020-04-22 15:33:41   作者:江节胜   来源:胜行天下网   阅读:524   评论:0

js导出的长数字变成科学计数法

table表格导出excel-biginteger长数字导出后变成科学计数法处理

解决方案:

1、Navicat导出

2、可以导出的 html 结构

 var appendHtml =

	'<table id="query_result1">'

	+'<thead class=""><tr><th><div>主键div>th><th><div>创建时间div>th>tr>thead>'

	+'<tbody><tr><td style="">24201883434356582td><td style="">2015-10-29 11:21:28td>tr>'

	+'<tr><td style="">24201883434356835td><td style="">2015-10-30 16:35:02td>tr>'

	+'<tr><td style="">24201883434357061td><td style="">2015-11-01 09:47:24td>tr>tbody>'

	+'table>';

	//这里replace查询的内容要和实际匹配一下 appendHtml = appendHtml.replace(/<td style=""/g, "<td STYLE='MSO-NUMBER-FORMAT:\\@'"); var html = "
	
	" + appendHtml + "body>html>";

	// 实例化一个Blob对象,其构造函数的第一个参数是包含文件内容的数组,第二个参数是包含文件类型属性的对象 var blob = new Blob([html], {

		type: "application/vnd.ms-excel"

	}); //application/octet-stream

	//也可以用js创建一个a标签 var a = document.createElement('a');

	// var a = document.getElementsByTagName("a")[0];

	// 利用URL.createObjectURL()方法为a元素生成blob URL

	a.href = URL.createObjectURL(blob);

	// 设置文件名 a.download = "统计表.xls"; //xlsx

	a.click(); 

说明:

1、bigint强转成char无效: select convert(pk_id,CHAR) from xxx_table 无效。

https://blog.csdn.net/nihaoqiulinhe/article/details/53537540?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1

如果excel中 显示一个 绿色的小三角,表示文本格式。

其他,未验证,可百度。

mso-number-format:"0" NO Decimals  mso-number-format:"0\.000" 3 Decimals  mso-number-format:"\#\,\#\#0\.000" Comma with 3 dec  mso-number-format:"mm\/dd\/yy" Date7  mso-number-format:"mmmm\ d\,\ yyyy" Date9  mso-number-format:"m\/d\/yy\ h\:mm\ AM\/PM" D -T AMPM  mso-number-format:"Short Date" 01/03/1998  mso-number-format:"Medium Date" 01-mar-98  mso-number-format:"d\-mmm\-yyyy" 01-mar-1998  mso-number-format:"Short Time" 5:16  mso-number-format:"Medium Time" 5:16 am  mso-number-format:"Long Time" 5:16:21:00  mso-number-format:"Percent" Percent - two decimals  mso-number-format:"0%" Percent - no decimals  mso-number-format:"0\.E+00" Scientific Notation  mso-number-format:"\@" Text  (目前只用过) mso-number-format:"\#\ ???\/???" Fractions - up to 3 digits (312/943) 

F6的SQL平台可使用(先把显示条数改到最大) 如果直接通过js给元素批量加style,导出执行时又会去还原。

 var targetTableObj = document.getElementById("query_result1"); var appendHtml = targetTableObj.outerHTML; console.log("appendHtml =" + appendHtml); //看看实际是什么,再replace /xxx/g //这里replace查询的内容要和实际匹配一下 appendHtml = appendHtml.replace(/, "); var html = "
	
	" + appendHtml + ""; // 实例化一个Blob对象,其构造函数的第一个参数是包含文件内容的数组,第二个参数是包含文件类型属性的对象 var blob = new Blob([html], { type: "application/vnd.ms-excel" }); //application/octet-stream //也可以用js创建一个a标签 var a = document.createElement('a'); // var a = document.getElementsByTagName("a")[0]; // 利用URL.createObjectURL()方法为a元素生成blob URL a.href = URL.createObjectURL(blob); // 设置文件名 a.download = "统计表.xls"; //xlsx a.click(); 

相关评论

加我微信 596957738 (QQ同号)加我微信     QQ联系:596957738    地址:江苏省南京市浦口区

苏ICP备2023050353号

   

苏公网安备32011402010305号

江节胜的Gitee,江节胜的Git地址