代码之家  ›  专栏  ›  技术社区  ›  Hola Soy Edu Feliz Navidad

在UI网格上输入日期

  •  0
  • Hola Soy Edu Feliz Navidad  · 技术社区  · 6 年前

    我有一个AngularJS ui网格,用于显示包括日期在内的几个字段。日期来自服务器,格式如下:2018-01-31。 在列定义中,我有类似的内容:

    .columnDefs = [
    ...
          { name: 'startDate', displayName: 'Start Date', width: 170, enableHiding: false, cellTemplate: dateCellTemplate},
         ];
    

    我已经添加了 type: 'date' cellFilter: 'date:\'yyyy-MM-dd\'' ,他们都没有工作过。

    该模板只有一个日期输入,如下所示:

    const dateCellTemplate = '<div><input type="date" ng-model="MODEL_COL_FIELD" ng-change="grid.appScope.saveEdit(row)"></div>'
    

    每当我收到服务器响应时,我的js控制台就会显示以下错误。

    Error: [ngModel:datefmt] http://errors.angularjs.org/1.4.8/ngModel/datefmt?p0=2018-01-24
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   Guranjan Singh    6 年前

    您需要将模型转换为 Date 对象,然后再使用它。使用

    new Date(your date here);
    

    这是因为您使用的是输入类型 日期 angular需要的是日期类型,而不是字符串。