Kendo UI:需要将多色单元网格导出为ex​​cel

时间:2016-06-13 08:36:48

标签: jquery excel kendo-ui kendo-grid

根据单元格值,我需要对网格的不同单元格进行颜色编码。我不会对整个色谱柱进行着色,而是对不同色谱柱的不同单元进行着色,这可能非常随机 我试图用Kendo模板做到这一点,但无法找到一种方法来隔离单个细胞并给它们一个单独的背景颜色。所以我使用jQuery来访问具有与我的需求相对应的单元格值的td元素,然后给td元素一个类来改变背景颜色。这样就完成了。

现在,我需要将此网格 - 以及单元格的彩色背景 - 导出为ex​​cel。但是Kendo的ootb导出到Excel功能并没有使单个单元格着色。有没有办法以满足我需求的方式配置数据源?或者,如果没有这个,那么任何其他第三方工具都可以让我轻松制作excel文件而不需要对我的数据源对象进行太多修改?

1 个答案:

答案 0 :(得分:1)

只要导出到excel为单元格着色,就可以完成,但不能通过数据源。幸运的是,您不需要触摸数据源。

我做了什么(我只需要做行)是我抓住了所有的剑道网格行背景颜色,将它们设置在临时数组中,然后迭代通过工作表对象的行并通过以下属性设置颜色(在excel表中):

(i和j是循环的索引)

//background color
sheet.rows[i].cells[j].background = equivalent row value from grid array
//text color
sheet.rows[i].cells[j].color = equivalent row value from grid array

因此,如果使用二维数组从网格中获取颜色,则只需在工作表对象中重新创建该结构并设置属性。