Formatear la fecha de un grid antes de enviarla
Pues bien, actualmente he usado el codigo del tutorial [b]Guardar los cambios del Grid editable usando Ajax[/b] que se encuentra en este sitio, y el cual ha funcionado perfectamente.
Pero me he topado con lo siguiente:
En mi grid tengo cuatro columnas de tipo fecha, como pueden observar en el siguiente codigo:
this.Record_MesesPago = new Ext.data.Record.create([ {name: 'ID_MP', type: 'int'}, {name: 'CIC_ID', type: 'int'}, {name: 'CICLO_ESC', type: 'string'}, {name: 'NIV_ID', type: 'int'}, {name: 'ORDEN_MES', type: 'int'}, {name: 'NOMBRE_MES', type: 'string'}, {name: 'FECHA_1', type: 'date', dateFormat: 'Y-m-d'}, {name: 'FECHA_2', type: 'date', dateFormat: 'Y-m-d'}, {name: 'FECHA_3', type: 'date', dateFormat: 'Y-m-d'}, {name: 'FECHA_4', type: 'date', dateFormat: 'Y-m-d'} ]);Al actualizar por ejemplo cualquier columna de tipo fecha el navegador envia los datos de la siguiente manera:
[{"ID_MP":8,"CIC_ID":3,"CICLO_ESC":"2008-2009","NIV_ID":1,"ORDEN_MES":"10","NOMBRE_MES":"Agosto", "FECHA_1":"2010-08-01T00:00:00","FECHA_2":"2010-08-10T00:00:00","FECHA_3":"2010-08-11T00:00:00", "FECHA_4":"2010-08-31T00:00:00"}]Como pueden observar la fecha se envia en el siguiente formato
"FECHA_1":"2010-08-01T00:00:00","FECHA_2":"2010-08-10T00:00:00","FECHA_3":"2010-08-11T00:00:00","FECHA_4":"2010-08-31T00:00:00"y lo que yo quiero es que se envie con el formato 'Y-m-d'. Desde mi humilde punto de vista, se que en este codigo habria que identificar si el RECORD se llama FECHA_1 ó FECHA_2 ó FECHA_3 ó FECHA_4 para aplicarle el formato correspondiente.
1. //save changes in the grid 2. var modified = this.grid.getStore().getModifiedRecords();//step 1 3. if(!Ext.isEmpty(modified)){ 4. var recordsToSend = []; 5. Ext.each(modified, function(record) { //step 2 6. recordsToSend.push(Ext.apply({id:record.id},record.data)); 7. }); 8. 9. this.grid.el.mask('Saving…', 'x-mask-loading'); //step 3 10. this.grid.stopEditing(); 11. 12. recordsToSend = Ext.encode(recordsToSend); //step 4 13. 14. Ext.Ajax.request({ // step 5 15. url : 'editorgrid-ajax.php', 16. params :{records : recordsToSend}, 17. scope:this, 18. success : function(response) { //step 6 19. this.grid.el.unmask(); 20. this.grid.getStore().commitChanges(); 21. } 22. }); 23. }¿Pero como averiguo el nombre del campo para poder formatear la fecha ? De antemano gracias por la ayuda que me puedan brindar
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.