Enterprise: L'éditeur de date affiche '00000000' lorsque les données sont vides

Créé le 16 oct. 2018  ·  9Commentaires  ·  Source: infor-design/enterprise

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 :

  1. Modifiez la grille de données/l'exemple modifiable de sorte que la date ou la date de commande soit '00000000'
  2. ouvrir http://localhost :4000/components/datagrid/example-editable

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.

[2] type

Tous les 9 commentaires

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.

Cette page vous a été utile?
0 / 5 - 0 notes