Format Cell Values in the Grid
Environment
Product | Progress Kendo UI Grid for jQuery |
Operating System | Windows 10 64bit |
Preferred Language | JavaScript |
Description
How can I format the cell values of the Kendo UI Grid?
Solution
Set the format
option of the cells. For more information on the formats that are supported by Excel, refer to the page on creating a custom number format.
The following example demonstrates how to format cell values of the Grid while exporting it to Excel.
<div id="grid"></div>
<script>
$("#grid").kendoGrid({
toolbar: ["excel"],
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 ++) {
row.cells[cellIndex].format = "[Blue]#,##0.0_);[Red](#,##0.0);0.0;"
}
}
},
dataSource: {
data: [
{ text: "Positive", value: 10.5 },
{ text: "Negative", value: -10.5 },
{ text: "Zero", value: 0 }
]
}
});
</script>
The following example demonstrates how to set a custom format for date
values.
<div id="grid"></div>
<script>
$("#grid").kendoGrid({
toolbar: ["excel"],
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 ++) {
row.cells[cellIndex].format = "yy-MM-dd hh:mm:ss"
}
}
},
columns: [
{ field: "name" },
{ field: "age" },
{ field: "date" }
],
dataSource: {
data: [
{ name: "Jane Doe", age: 30, date: new Date() },
{ name: "John Doe", age: 33, date: new Date() }
],
schema: {
model : {
fields: {
date: { type: "date" },
name: { type: "string" },
age: { type: "number" }
}
}
}
}
});
$("#export").click(function(e) {
var grid = $("#grid").data("kendoGrid");
grid.saveAsExcel();
});
</script>