5

セルに日付ピッカーが必要なため、セル テンプレートを作成しました

var myDateTemplate= '<input type="text"  ng-model="row.entity.myDate"  />';

私のcolモデルは

    var col = [{
                field : 'myDate',
                displayName : 'My Date',
                enableCellEdit : true,
                width : '130',
                cellTemplate : myDateTemplate,
                editableCellTemplate : myDateTemplate,
                resizable : true,
                sortable : false
            }]

それは正常に動作し、日付を選択すると、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"/>';

UI 日付形式を使用すると、エラーがスローされます

エラー: 構文エラー: トークン 'undefined' は、[{ dateFormat:] で始まる式 [{ dateFormat:] の列 NaN のプライマリ式ではありません

そして、それは次のような日付を与えています

2013 年 12 月 23 日月曜日 00:00:00 GMT+0530 (インド標準時) ではなく、私の好みの形式です。

4

1 に答える 1

12

日付形式を囲む引用符をエスケープして、適切な文字列を作成するだけです。

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

私はあなたとまったく同じ 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'
            }]
于 2014-01-04T21:51:47.090 に答える