【问题标题】:Parsing dates in kendo grid - mvvm binding在剑道网格中解析日期 - mvvm 绑定
【发布时间】:2014-02-24 13:33:17
【问题描述】:

在这里您可以看到剑道 ui 网格的绑定:

<div data-role="grid" data-bind="source: reportSource, visible: reportVisible"
    data-columns='[{"field":"TIME", "title": "TIME", format: "{0:yyyy-MM-dd hh:mm:ss}", parseFormats: ["yyyy-MM-dd'T'HH:mm:ss"]}, {"field":"LOGIN", "title": "LOGIN"}, {"field":"DEAL", "title": "DEAL"}]'>
</div>

如您所见,我正在尝试解析日期。我找到了这个solution,但是当我尝试在 mvvm 绑定中应用它时,'T' char 的单引号会引起麻烦。 如何在 mvvm 绑定中解析日期?

提前致谢,

【问题讨论】:

  • 好吧,您似乎只是在处理另一个属性,不是吗?所以也许尝试用 ' 替换你的单引号
  • 你找到解决方案了吗@anilca
  • @MustafaP 我添加了解决方案作为答案。高莱凝胶素。

标签: html json mvvm kendo-ui kendo-grid


【解决方案1】:

这是解决问题的jsfiddle:http://jsfiddle.net/BYqpL/3/ 重点是:

仅当数据来自传输时才执行内置的dataSource数据解析

我们还必须为模式中的字段定义解析方法。

"CreatedDate": { 
    type: "date", 
    parse: function(value) { 
        return kendo.parseDate(value, "yyyy-MM-ddTHH:mm:ss");
    }
}

【讨论】:

  • 谢谢,它运行良好。 Sanada kolay gelsin hocam.
  • 顺便说一句,您是否注意到从 CreatedDate 中删除 parse 函数时,日期格式保持不变。 "format": "{0:dd/MM/yyyy hh:mm:ss}" 无需解析功能即可正常工作
  • 不。查看日期的时间部分。它没有正确解析“T”之后的部分。如果删除 parse 函数,我在 CreatedDate 列中看到 12:00:00 这不是预期值。
【解决方案2】:

由于您正在处理一个属性,请尝试用

替换您的单引号
&#39;

【讨论】:

    【解决方案3】:

    我遇到了同样的问题,这篇文章对我帮助很大 http://blog.falafel.com/passing-dates-kendo-ui-aspnet/

    我对代码所做的更改:

    1. 在参数映射中

      如果(操作===“更新”||操作===“创建”){

      data.model_date_field = kendo.toString(kendo.parseDate(data.model_date_field), "G");

      返回数据; }

    2. 在模型定义中

      字段:{ 模型日期字段:{可为空:真,类型:“日期”} }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-11
      • 1970-01-01
      • 1970-01-01
      • 2020-11-05
      相关资源
      最近更新 更多