2013-07-26 5 views
5

voglio un selettore di data nella mia cella così ho creato un modello di cellulareui-Data-formato nel modello di cellulare nggrid

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

mio modello col è

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

funziona benissimo e quando ho scelto la data ottengo in/gg/aaaa mm voglio cambiarlo in formato gg/mm/aaaa al ho aggiunto ui formato della data

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

quando ho utilizzare il formato della data ui sarà lanciare un errore

errore: Errore di sintassi: 'non definito' non è un'espressione primaria Token a colonna NaN dell'espressione [{dateFormat:] a partire da [{dateFormat:]

e sta dando la data come

Mon 23 dicembre 2013 00:00:00 GMT + 0530 (ora standard India) invece del mio formato preffered.

risposta

12

Penso che tu sia vicino, basta sfuggire le virgolette intorno alla vostra formato della data per rendere la stringa corretta:

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

non sto usando la stessa identica CellTemplate sei (presumibilmente il vostro campo di input funzionerà correttamente una volta sfuggite le virgolette). Questo funziona per me:

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' 
      }] 
+0

Ho un problema simile sulla formattazione della data. Riceverò il valore di data come "2016-09-01 08: 14: 55.467 IST". e prova a convertire "MM/gg/aaaa HH: MM: ss.SSS" con l'opzione cellfilter come { "nome": "creationTimestamp", "type": "date", "cellFilter": "data: 'MM/gg/aaaa HH: MM: ss.SSS' " }, ma ancora ottengo il valore di uscita" 2016-09-01 08: 14: 55.467 IST ". Potete per favore aiutarmi? –

+0

I minuti devono essere minuscoli, altrimenti si avrà il mese: cellFilter: 'data: \' MM/gg/aaaa HH: mm: ss \ '' –