Describe el error
Cuando dataGrid hace que una celda sea editable, si no hay cellText, obtiene el valor del campo. El valor del campo en nuestra aplicación tiene ceros para valores de fecha en blanco. El editor de fechas se abre con ceros.
A continuación se muestra el código al que se hace referencia.
makeCellEditable: function(row, cell, event) {
if (!this.isCellEditable(row, cell)) {
return;
}
//Locate the Editor
var col = this.columnSettings(cell);
if (!col.editor) {
if (event.keyCode === 32) {
this.toggleRowSelection(this.activeCell.node.closest('tr'));
}
return;
}
// Put the Cell into Focus Mode
this.setActiveCell(row, cell);
var cellNode = this.activeCell.node.find('.datagrid-cell-wrapper'),
cellParent = cellNode.parent('td'),
cellValue = (cellNode.text() ? cellNode.text() : this.fieldValue(this.settings.dataset[row], col.field));
if (cellParent.hasClass('is-editing')) {
//Already in edit mode
//Editor.focus
cellNode.find('input').focus();
return false;
}
Reproducir
Pasos para reproducir el comportamiento:
Comportamiento esperado
Espere que si no hay texto de celda, se pasa una cadena vacía o se formatea el valor del campo.
Para su información: los controles 3.5 proporcionaron una devolución de llamada que permitió cambiar el valor del campo antes de usar el valor en el editor.
Creo que el 0000000 parece un error de conversión de configuración regional.
Pero además de eso, la devolución de llamada es una buena idea, ya que permitiría una personalización futura
@ boehmd1 ¿Podría proporcionar los pasos para replicar este problema? La sección "Para reproducir" en la Descripción del problema no se ha actualizado ni modificado. Gracias amablemente.
Buena decisión: pensé que había reproducido esto, pero no estoy seguro de cómo se establecerían realmente los datos. Si intento este ejemplo: http: // localhost : 4000 / components / datagrid / example-editable.html, entonces hay algunos datos en blanco que se muestran bien sin el 0000000 en la cuadrícula. ¿El ejemplo de datos es como: cadena '00000000'?
También @ boehmd1, ¿cómo se
'loadValue' era un método en el editor.
Reproducir...
Utilice el ejemplo http: // localhost : 4000 / components / datagrid / example-editable
Cambiar la fecha o OrderDate '00000000'
@davidcarlsonberg loadData
fue un gancho en el editor. Probablemente podamos convertir el formato Locale 00000000
correctamente en una fecha vacía para resolver esto. Entonces, si queremos un gancho en los editores, podemos hacerlo además.
Control de calidad aprobado. Moviendo t Hecho.
Probado en: http: // localhost : 4000 / components / datagrid / example-editable en todos los dispositivos, navegadores y sistemas operativos.