[英]Set column type as data on Kendo Grid in javascript
我有一個用javascript生成的kendo網格。 我沒有數據源,因為數據在頁面上,然后javascript在其上生成了網格。 我正在嘗試將列設置為日期類型,但是當我這樣做時,列僅顯示為空。
這是用於生成劍道網格的腳本
var grid = $("#punches").kendoGrid({
dataSource: {
pageSize: 15,
schema: {
model: {
fields: {
PunchDay: { type: 'date' }
}
}
}
},
sortable: true,
selectable: "multiple",
pageable: true,
filterable: true,
scrollable: false,
groupable: true,
resizable: true
}).data("kendoGrid");
設置類型時, PunchDay
列顯示為空。 我認為這與該列中的數據設置有關
@FieldTranslation.ToShortDate(Html.DisplayFor(modelItem => item.PunchDay).ToString())
由於其為字符串而不是日期格式。 但是,我對此沒有辦法。 我的網格代碼是
<table class="table" id="punches"> <thead> <tr> <th title="@FieldTranslation.GetLabel("ID", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("ID", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("EmployeeName", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("EmployeeName", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("PunchDay", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("PunchDay", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("PunchIn", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("PunchIn", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("PunchOut", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("PunchOut", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("Adjustment Time", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("Adjustment Time", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("Adjustment Description", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("Adjustment Description", GlobalVariables.LanguageID) </th> <th title="@FieldTranslation.GetLabel("WorkHours", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("WorkHours", GlobalVariables.LanguageID) </th> @*<th> @Html.DisplayNameFor(model => model.Inactive) </th>*@ <th title="@FieldTranslation.GetLabel("Department", GlobalVariables.LanguageID)"> @FieldTranslation.GetLabel("Department", GlobalVariables.LanguageID) </th> <th width="125px;" class="hidden-filter">Actions</th> </tr> </thead> <tbody> @foreach (var item in Model) { <tr> <td> @Html.DisplayFor(modelItem => item.ID) </td> <td> @Html.DisplayFor(modelItem => item.EmployeeName) </td> <td> @FieldTranslation.ToShortDate(Html.DisplayFor(modelItem => item.PunchDay).ToString()) </td> <td> @FieldTranslation.ToShortTime(Html.DisplayFor(modelItem => item.PunchIn).ToString()) </td> <td> @FieldTranslation.ToShortTime(Html.DisplayFor(modelItem => item.PunchOut).ToString()) </td> <td> @Html.DisplayFor(modelItem => item.AdjustTime) </td> <td> @Html.DisplayFor(modelItem => item.AdjustDescr) </td> <td> @Html.DisplayFor(modelItem => item.WorkHours) </td> @*<td> @Html.DisplayFor(modelItem => item.Inactive) </td>*@ <td> @Html.DisplayFor(modelItem => item.Department) </td> <td> <a href="@Url.Action("EditTime", "TimePunches", new {id = item.ID, flt = ViewBag.FLT})" title="Edit"><i class="icon-edit fa fa-pencil fa-fw fa-lg"></i></a> <a href="@Url.Action("PunchLogIndex", "TimePunches", new {id = item.ID, flt = ViewBag.FLT})" title="Punch Log"><i class="icon-purple fa fa-book fa-fw fa-lg"></i></a> <a href="@Url.Action("PunchRequestIndex", "TimePunches", new { punchId = item.ID, flt = ViewBag.FLT })" title="See Change Request Log"><i class="icon-niagara fa fa-list fa-fw fa-lg"></i></a> <a href="#" id="delete" data-id="@item.ID" data-client="@item.ClientID"><i class="icon-red fa fa-times fa-fw fa-lg"></i></a> </td> </tr> } </tbody> </table>
我該怎么做才能重新顯示我的約會?
嘗試像這樣添加列部分
var grid = $("#punches").kendoGrid({
dataSource: {
pageSize: 15,
schema: {
model: {
fields: {
PunchDay: { type: 'date' }
}
}
}
},
sortable: true,
selectable: "multiple",
pageable: true,
filterable: true,
scrollable: false,
groupable: true,
resizable: true
},
columns: [
{ field: "PunchDay", title: "PunchDay", format: "{0:MM/dd/yyyy}" },
...
]).data("kendoGrid");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.