今天早上客户跟我说excel导出身份证的时候显示有的对有的不对,我一看原来身份证以X结尾的可以,其它都显示不正确。身份正显示如图所示:
在网上搜了一下发现,原来excel看你数字列超过12位就会显示科学计数。而身份证一般都是18位所以显示这样。
解决办法就是在身份证这一列前面加“单引号”。形如:'4206211111111111111
具体代码如下:<td style="border: 1px solid #000;">'<s:property value="id_card" /></td>
这样就可以把问题解决了,不过身份证号码导出的时候前面会有一个单引号。
================================================================
我总感觉还有更好的方法,我在网上搜了一下,导出的时候可以设置td的样式,不过我设置了还是没有效果。
奇葩事情不断呀,我在本地测试可以通过,放到服务器上就没有效果。最后找到了一种在本地和服务器都有效果的方法就是:
在页面前面加入如下代码:
复制代码 代码如下:
<style>
td{
mso-number-format:'\@';
}
</style>
时间: 2024-09-16 23:41:55