[DOJO] EnhancedGrid [resolu]

EnhancedGrid [resolu] [DOJO] - HTML/CSS - Programmation

Marsh Posté le 06-09-2010 à 11:06:15    

Bonjour,
Après la lecture des tutos officiels et des docs :
 


même si je ne l'ai pas trouvé là :


Je n'arrive pas à faire ce que je veux.
 
L'objectif est de faire un tableau EnhancedGrid avec des cellules éditables qui peuvent contenir des widget comme dijit.form.DateTextBox
ou dijit.InlineEditBox.
 
et... j'y arrive pas...
 
mon code est  :
 

Code :
  1. <script type="text/javascript">
  2.             dojo.require("dijit.layout.TabContainer" );
  3.             dojo.require("dijit.layout.ContentPane" );
  4.             /** Pour le datagrid droppable */
  5.             dojo.require("dojox.grid.EnhancedGrid" );
  6.             dojo.require("dojox.grid.enhanced.plugins.DnD" );
  7.             dojo.require("dojox.grid.enhanced.plugins.Menu" );
  8.             dojo.require("dojox.grid.enhanced.plugins.NestedSorting" );
  9.             dojo.require("dojox.grid.enhanced.plugins.IndirectSelection" );
  10.             dojo.require("dojox.data.CsvStore" );
  11.             /** FinPour le datagrid droppable */
  12.            
  13.      dojo.addOnLoad(function() {
  14.          // our test data store for this example:
  15.          var store = new dojox.data.CsvStore({url: 'service_charger_liste_sport_CSV.php'});
  16.          // set the layout structure:
  17.          var layout = [{
  18.              field: 'titre',
  19.              name: 'Titre',
  20.              editable: 'true',
  21.              width: '200px'
  22.          },
  23.          {
  24.              field: 'date_dernier_update',
  25.              name: 'Date de la derni&egrave;re<br/> mise &agrave; jour',
  26.              width: '100px'
  27.          },
  28.          {
  29.              field: 'reconduction_automatique',
  30.              name: 'Reconduction<br/>automatique',
  31.              width: 'auto'
  32.          },
  33.          {
  34.              field: 'liste_attente',
  35.              name: 'Reconduction<br/>automatique',
  36.              width: 'auto'
  37.          },
  38.          {
  39.              field: 'commentaires',
  40.              name: 'Commentaires',
  41.              width: 'auto'
  42.          }];
  43.          // create a new grid:
  44.          var grid = new dojox.grid.EnhancedGrid({
  45.              query: {
  46.                  titre: '*'
  47.              },
  48.              store: store,
  49.              rowSelector: '20px',
  50.              structure: layout,
  51.              plugins: {
  52.                  nestedSorting: true,
  53.                  dnd: true
  54.              }
  55.          },
  56.          document.createElement('div'));
  57.          // append the new grid to the div "gridContainer4":
  58.          dojo.byId("gridDiv" ).appendChild(grid.domNode);
  59.          // Call startup, in order to render the grid:
  60.          grid.startup();
  61.      });
  62.         </script>


 
Le editable: 'true' provoque une erreur :
 
Firebug cannot find _firebugConsole element true Window index_menu.php
uncaught exception: _FirebugCommandLine init failed in http://localhost/bordeaux2/gestion [...] x_menu.php because TypeError: window.console.getFirebugElement is not a function

 
Vous auriez une piste ?


Message édité par naeco le 08-09-2010 à 16:20:45
Reply

Marsh Posté le 06-09-2010 à 11:06:15   

Reply

Marsh Posté le 06-09-2010 à 11:47:36    

J'ai tout redémarrer l'ordinateur, et donc firefox, il semblerait que l'erreur affichée dans la console n'est pas dû à la valeur editable= 'true', cependant, mes cellules ne sont pas éditable pour autant :'( ...
 
Vous auriez une idée ?

Reply

Marsh Posté le 07-09-2010 à 16:24:23    

Pour le coté éditable il faut utiliser un dojo.data.ItemFileWriteStore et pas new dojox.data.CsvStore.
 
 
Pour ce qui est d'y mettre des widget comme la date, j'ai toujours pas réussi.
 
Si quelqu'un à une idée, je suis preneur !  
Merci !

Reply

Marsh Posté le 08-09-2010 à 16:18:57    

La syntaxe était la suivante :
 

Code :
  1. {
  2.              field: 'Enseignants',
  3.              type: dojox.grid.cells.Select,
  4.              options: ['Jeff','Marcel'],
  5.              values: [ '0', '1' ],
  6.              defaultValue: "aucun",
  7.               formatter: formatSourceSportsEnseignants,
  8.              width: 'auto'
  9.               //http://o.dojotoolkit.org/forum/dojox-dojox/dojox-grid-support/set-option-and-value-properties-dojox-grid-cells-select-object-
  10.             }

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed