javascript 如何防止Bootstrap表导出后Excel中的日期格式转换?

bttbmeg0  于 2023-06-04  发布在  Java
关注(0)|答案(1)|浏览(574)

下面是我的bootstrap表:enter image description here
导出为.xls或.csv格式后,我发现“已注册”字段自动更改为日期格式。下面是Excel:enter image description here
你可以看到,原来的值是5/10(这意味着10分中的5分),但在导出后它变成了10-May。有什么方法可以保留字段的原始值吗?我不希望它自动更改为日期格式。谢谢
下面是我的代码:

function loadTable() {
        $.ajax({
            type: "POST",
            url: "admin/oes/getReport",
            success: function (dataRaw) {
                var data = JSON.parse(dataRaw);
                
                $('#table').bootstrapTable('destroy');//re-initialize
                $('#table').bootstrapTable({
                    data: data.list,
                    pageNumber:1,
                    pagination: 'client',
                    pageSize: 50,
                    pageList: [20,50,100,200],
                    search: true,
                    //toolbar: "#toolbar",
                    //exportDataType: $(this).val(),
                    exportTypes: ['csv','excel'],
                    exportOptions: {
                        fileName: 'geElectiveReport_' + Date.now()
                    },
                    columns: [{
                        field: 'sectionId',
                        title: 'Section ID',
                        sortable: true
                    }, {
                        field: 'programmeType',
                        title: 'Prog Type',
                        sortable: true
                    }, {
                        field: 'instructor',
                        title: 'Instructor',
                        sortable: true
                    }, {
                        field: 'module',
                        title: 'Module',
                        sortable: true
                    }, {
                        field: 'room',
                        title: 'Room',
                        sortable: true
                    }, {
                        field: 'week',
                        title: 'Week',
                        sortable: true
                    }, {
                        field: 'time',
                        title: 'Time',
                        sortable: true
                    }, {
                        field: 'mediumOfInstruction',
                        title: 'Medium of Instruction',
                        sortable: true
                    }, {
                        field: 'programmeNotAllow',
                        title: 'Programme not Allow',
                        sortable: true
                    }, {
                        field: 'numEnrol',
                        title: 'Enrolled',
                        sortable: true,
                        
                        formatter: (value, row, index, field) => {
                            return value + '/' + row.quota
                        }
                    },
                    ]
                });


            },
            error: function () {
                alert("");
            }
        });

    }

我期望Excel将显示原始值,即5/10,而不是自动更改为日期格式10-May。

ccrfmcuu

ccrfmcuu1#

bootstrap-table使用的tableExport.jquery.plugin中有一些额外的选项。data-tableexport-cellformat可以解决这个问题,它应该将数字转换为一个字符串,或者至少是一种不改变数字的格式。以下是文档中的相关摘录:
<td data-tableexport-cellformat="">...</td> ->空数据值保留单元格内容的格式。例如,没有数字分隔符[sic]转换
如果需要,该链接还包含其他导出类型的信息。
但是,您可能希望尝试在Excel以外的其他文件中打开,以查看它是否实际上是Excel,只是默认情况下重新格式化它,而不是导出文档中固有的内容,在这种情况下,您需要以某种方式修改配置。

相关问题