gpt4 book ai didi

javascript - Kendo 网格导出日期格式不正确

转载 作者:行者123 更新时间:2023-11-29 23:40:11 25 4
gpt4 key购买 nike

当我尝试从 Kendo 网格导出 excel 时,日期格式不正确。

这个 Warranty_Start_Date 在我的表格列中可以为空,下面是网格列的模板。

    customColumns.push({
title: customHeaders[i],
field: headers[i],
width: 150,
template:
"#= " + headers[i] + " ? kendo.toString(kendo.parseDate(" + headers[i] + "), 'dd/MM/yyyy') : 'N/A' #",
});

对于网格,我启用了 excel 导出功能并尝试自定义特定列的格式:

            var grid = $("#gridHardwares").kendoGrid({
excel: {
fileName: "excelfile.xlsx",
allPages: true,
filterable:true
},
excelExport: function(e) {
var sheet = e.workbook.sheets[0];

for (var rowIndex = 1; rowIndex < sheet.rows.length; rowIndex++) {
var row = sheet.rows[rowIndex];
for (var cellIndex = 0; cellIndex < row.cells.length; cellIndex ++) {
if (cellIndex >= 9 && cellIndex <= 11)
{
row.cells[cellIndex].format = "yy-MM-dd hh:mm:ss";
}
if (cellIndex >= 13)
row.cells[cellIndex].format = "0.00";
}
}
},

我不明白,因为这两个小数位格式工作正常但日期格式不是。导出excel结果: date is not in readable format

我也试过这种方法,它保留了列模板,但我遇到了“替换未定义”的错误

            excelExport: function(e) {
var sheet = e.workbook.sheets[0];
var template = kendo.template(this.columns[13].template);
for (var rowIndex = 1; rowIndex < sheet.rows.length; rowIndex++) {
var row = sheet.rows[rowIndex];

for (var cellIndex = 0; cellIndex < row.cells.length; cellIndex ++) {
if (cellIndex >= 9 && cellIndex <= 11)
{
var dataItem = {
Warranty_Start_Date: row.cells[13].value
};

row.cells[13].value = template(dataItem);
row.cells[cellIndex].format = "yy-MM-dd hh:mm:ss";
}
if (cellIndex >= 13)
row.cells[cellIndex].format = "0.00";
}
}
},

error occur when export

也许这个模板方法不适合我的情况,我不知道。但是还有其他方法可以将此日期字符串/Date(1382544000000)/转换为正确的“dd-MM-yyyy”格式吗?急需帮助:(

最佳答案

好的,解决方案就是将此字段类型设置为“日期”。疯狂的。 enter image description here

关于javascript - Kendo 网格导出日期格式不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45406689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com