Kendo Grid中的日期格式错误

时间:2017-06-27 11:36:44

标签: kendo-ui kendo-grid date-formatting

I have a kendo grid,

@(Html.Kendo().Grid<TaskViewModel>()
    .Name("grid")
    .Deferred()
    .ClientRowTemplate(Html.Partial("Partials/TaskGridRowTemplate").ToHtmlString())
    .TableHtmlAttributes(new { @class = "table table-stripped" })
    .Events(e => e.DataBound("setCdsPriority"))
    .Columns(columns =>
    {
        columns.Bound(e => e.IsSelected)
            .Sortable(true)
            .Filterable(false)
            .Title(string.Empty);
        columns.Bound(e => e.ScanDate).Title("Scanning Date");   
...
    })

    .Filterable()
    .Selectable(selectable => selectable.Mode(GridSelectionMode.Multiple))
    .Sortable()
    .Pageable(x =>
    {
        x.ButtonCount(3);
        x.Enabled(true);
        x.PageSizes(new[] { "5", "10", "20" });
        x.Refresh(true);
    })

    .DataSource(dataSource => dataSource
        .Ajax()
        .Read(read => read.Action("AllTasks", "Cockpit"))
        .ServerOperation(true)
      ))

我必须按照你在图片中看到的那样过滤它

enter image description here

这是执行过滤器的方法

 public List<TaskViewModel> GetTasksFiltered(TaskFilterModel filters)
        {
            List<Task> tasks = service.GetTasksFiltered(MapperExtension.CreateMapper<TaskFilterModel, TaskFilter>(filters));

            return tasks.Select(Convert).ToList();
        }

这是将结果返回到视图的方法

public JsonResult AllTasksFiltered(TaskFilterModel filters)
        {
            return Json(taskModelFactory.GetTasksFiltered(filters), JsonRequestBehavior.AllowGet);
    }

这是我的ajax

function onClickSearch() {
        var filtersObject =
        {
            CurrentWorkflowStepId: $("#taskStatus").data("kendoDropDownList").value(),
            ScanFromDate: $("#scanFromDate").data("kendoDatePicker").value(),
            ScanToDate: $("#scanToDate").data("kendoDatePicker").value(),
            BusinessCase: $("#businessCase").data("kendoDropDownList").value(),
            Region: $("#region").data("kendoDropDownList").value(),
            ZR: $("#zr").val()
        }

        $.ajax({
            type: "PUT",
            url: "/Cockpit/AllTasksFiltered",
            dataType: "json",
            traditional: true,
            data: JSON.stringify(filtersObject),
            contentType: 'application/json; charset=utf-8',
            success: function (data) {
                $("#grid").data("kendoGrid").setDataSource(new kendo.data.DataSource({
                    data: data
                }));
            }
        });
    }

首次加载网格时,“扫描日期”列正常。

这是扫描日期的行模板位

 <td>
        #: kendo.toString(ScanDate, 'dd.MM.yyyy HH:mm')#
    </td>

进行搜索时,显示的日期为

/Date(1498558275437)/

日期在显示之前格式正确,但我在屏幕上显示这种奇怪的格式。

有什么想法吗? 请事先提前。

0 个答案:

没有答案