Décrivez le bogue
Lorsque le dataGrid rend une cellule modifiable, s'il n'y a pas de cellText, il récupère la valeur du champ. La valeur du champ dans notre application a des zéros pour les valeurs de date vides. L'éditeur de date s'ouvre avec des zéros.
Ci-dessous le code qui est référencé.
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;
}
Reproduire
Étapes pour reproduire le comportement :
Comportement attendu
Attendez-vous à ce que s'il n'y a pas de texte de cellule, une chaîne vide est transmise ou la valeur du champ est formatée.
Pour info : les contrôles 3.5 fournissaient un rappel qui permettait de modifier la valeur du champ avant d'utiliser la valeur dans l'éditeur.
Je pense que le 0000000 ressemble à un bogue de conversion de Locale.
Mais en plus de cela, le rappel est une bonne idée car il permettrait une personnalisation future
@boehmd1 Pourriez-vous s'il vous plaît fournir des étapes pour reproduire ce problème ? La section « À reproduire » dans la description du problème n'a pas été mise à jour/modifiée. Merci gentiment.
Bon appel - je pensais avoir reproduit cela, mais je ne sais pas sur quoi les données seraient réellement définies. Si j'essaye cet exemple : http://localhost :4000/components/datagrid/example-editable.html alors il y a des données vides qui rendent bien sans le 0000000 dans la grille. L'exemple de données ressemble-t-il à : chaîne '00000000' ?
Aussi @boehmd1 comment s'appelait l'option dans 3.5 ?
'loadValue' était une méthode sur l'éditeur.
Reproduire...
Utilisez l'exemple http://localhost :4000/components/datagrid/example-editable
Changer la date ou OrderDate '00000000'
@davidcarlsonberg loadData
était un crochet pour l'éditeur. Nous pouvons probablement faire en sorte que le format Locale 00000000
correctement à une date vide pour résoudre ce problème. Ensuite, si nous voulons un crochet dans les éditeurs, nous pouvons le faire en plus.
AQ réussi. Déménagement terminé.
Testé sur : http://localhost :4000/components/datagrid/example-editable dans tous les appareils, navigateurs et systèmes d'exploitation.