nggrid单元格模板中的ui-date-format

cur*_*osa 5 angularjs angular-ui ng-grid

我想在我的单元格中使用日期选择器,因此我创建了一个单元格模板

var myDateTemplate= '<input type="text"  ng-model="row.entity.myDate"  />';
Run Code Online (Sandbox Code Playgroud)

我的col模型是

    var col = [{
                field : 'myDate',
                displayName : 'My Date',
                enableCellEdit : true,
                width : '130',
                cellTemplate : myDateTemplate,
                editableCellTemplate : myDateTemplate,
                resizable : true,
                sortable : false
            }]
Run Code Online (Sandbox Code Playgroud)

它工作正常,当我选择日期我得到它的mm/dd/yyyy格式我想将其更改为dd/mm/yyyy格式我添加了ui日期格式

 var myDateTemplate = '<input ui-date="{ dateFormat: 'dd mm yyyy' }" ui-date-format="dd mm yyyy" ng-model="row.entity.myDate"/>';
Run Code Online (Sandbox Code Playgroud)

当我使用ui日期格式时,它会抛出一个错误

错误:语法错误:令牌'undefined'不是表达式[{dateFormat:]的列NaN处的主表达式,从[{dateFormat:]开始

而它给出的日期就像

2013年12月23日星期一00:00:00 GMT + 0530(印度标准时间)而不是我的优先格式.

phe*_*ris 12

我认为你很接近,只是绕过日期格式的引号来制作正确的字符串:

var myDateTemplate = '<input ui-date="{ dateFormat: \'dd mm yyyy\' }" ui-date-format="dd mm yyyy" ng-model="row.entity.myDate"/>';
Run Code Online (Sandbox Code Playgroud)

我没有使用完全相同的cellTemplate(大概你的输入字段一旦你逃脱引号就能正常工作).这对我有用:

columnDefs: [{
                field:'StartTime', 
                displayName:'Start Time', 
                cellFilter: 'date:\'MM/dd/yyyy HH:MM:ss\'' 
            }, {
                field:'duration', displayName:'Duration'
            }, {
                field:'distance', displayName:'Distance'
            }, {
                field:'typedesc', displayName:'Type'
            }, {
                field:'Drivers', displayName:'Drivers'
            }]
Run Code Online (Sandbox Code Playgroud)