[英]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" },
],
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.