Kendo UI Grid分组字段标题设置:不显示为列的实现方法
解决Kendo UI Grid分组字段自定义标题且不显示对应列的问题
我之前也碰到过这个坑!Kendo UI Grid的group配置里直接加title确实不会生效——因为分组默认会优先读取对应列的title(如果存在该列的话),要是没有对应的列,就直接显示字段名。给你两个实用的解决方案:
方法一:添加隐藏列并设置标题
这种方法是给每个分组字段添加对应的列配置,但把列设为隐藏,这样分组就会自动使用列的title,同时不会在网格里显示该列。
修改你的列配置,加上分组字段的隐藏列:
columns: [ // 分组字段对应的隐藏列,设置自定义标题 { field: "tipo_documento", title: "DOCUMENTO", hidden: true }, { field: "anio", title: "AÑO", hidden: true }, { field: "equipo", title: "EQUIPO", hidden: true }, // 你原来的列配置 { field: "fecha_vigencia_ini", title: "FECHA VIGENCIA INICIO", attributes: { "class": "font-grid"} }, { field: "fecha_vigencia_fin", title: "FECHA VIGENCIA FIN", attributes: { "class": "font-grid"} }, { field: "descripcion",title: "DESCRIPCION" ,attributes: { "class": "font-grid"} }, ],
然后分组配置可以简化,不需要再加title(加了也会被列的title覆盖):
group: [ {field: "tipo_documento"}, {field:"anio"}, {field:"equipo"} ],
这种方法的好处是:如果以后需要显示某个分组字段的列,只需要把hidden: true改成hidden: false就行,维护起来更统一。
方法二:使用分组头部模板自定义标题
如果不想添加额外的隐藏列,可以直接用groupHeaderTemplate来自定义分组的标题格式,完全控制显示内容。
修改你的分组配置如下:
group: [ { field: "tipo_documento", groupHeaderTemplate: "DOCUMENTO: #= value #" }, { field: "anio", groupHeaderTemplate: "AÑO: #= value #" }, { field: "equipo", groupHeaderTemplate: "EQUIPO: #= value #" } ],
这里的#= value #是Kendo的模板语法,会替换成分组字段的实际值。你还可以根据需要调整模板的样式,比如加个自定义类:
groupHeaderTemplate: "<span class='group-title'>DOCUMENTO:</span> #= value #"
这种方法更灵活,不需要额外的列配置,适合只需要自定义分组标题、不需要关联列的场景。
内容的提问来源于stack exchange,提问作者Palomita Yañez Quiroz
相关产品推荐
相关产品推荐

