动态剑道网格中值的格式化
Formatting of values in dynamic Kendo grid
我试图弄清楚如何在绑定到动态数据源的剑道网格中格式化单个值。挑战在于列不是固定的,整个列的格式甚至不一致。
据我所知Kendo使用
支持列级别的格式字符串columns:[{field:Name,format:{1:c}}]
但是这个解决方案并不合适,因为它设置了整个列的格式。
我也发现了一个基于模板的解决方案,让你手动格式化你的数据使用这样的符号
columns:[{field:Name,template: "#= kendo.toString(kendo.parseDate(SomeDate, 'yyyy-MM-dd')}]
但是,这对我来说还是太硬了,因为它假设列中只有一个类型。
我正在寻找一种方法来指定在数据源本身是什么类型的值。这可能吗?
像这样
data = [{field:SomeField,Value:4,Format:{1:c}}]
您可以使用自定义模板解决这个问题。这将对每个值运行格式化。
for (var c = 0; c < grid.Cols.length; c++) {
grid.Cols[c].template = "#= FormatValue(" + grid.Cols[c].field + ")#";
}
function FormatValue(value) {
return kendo.toString(value, "c0")//currency formatting
}
如果要绑定动态数据源,则不需要格式化列或字段中的值。它会根据数据自动调整。您应该使用以下模式
fields: {
EventID: { editable: true, nullable: false },
EventName: { validation: { required: true} },
UserID: { validation: { required: true} },
EventDate: { validation: { required: true} },
EventTimeFrom: { validation: { required: true} },
EventTimeTo: { validation: { required: true} }
}
columns: [
{ field: "EventID", title: "Event ID" },
{ field: "EventName", title: "Event Name" },
{ field: "UserID", title: "User ID" },
{ field: "EventDate", title: "Event Date" },
{ field: "EventTimeFrom", title: "Start Time" },
{ field: "EventTimeTo", title: "End Time" },
],
相关文章:
- 剑道网格jQuery动画()问题
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- jQuery中是否内置了任何字符串格式化函数
- 我可以更改剑道UI网格吗's的外键值
- jqGrid树网格问题
- 在Three.js中导出网格会提高性能吗
- 如何在剑道网格初始化后设置pageSizes
- 在threejs中使用纹理网格和线框网格
- 如何在可分组的剑道网格中设置空数据文本
- 如何在Angular UI网格中选择下一行
- ExtJS网格单元格编辑器,防止焦点松动问题
- 多维数据集网格未在指定的分区中绘制
- 光线投射从内部投射时不会碰到网格
- 高亮显示包含<br>以及重新格式化网格
- jq网格;以 JSON 格式提取的日期未显示在表中.也无法格式化日期
- 为光滑网格编写自定义格式化程序
- 剑道在网格中格式化数字
- jqgrid 自定义格式化程序:自定义格式化程序始终返回网格的最后一行.为什么
- 网格中的EXTJS日期字段未出现/格式化
- 动态剑道网格中值的格式化