Seleccion Multiple

0

Buen dia compa#eros,

Necesito hacer seleccion multiple cuando haga click en el dojogrid,
es decir que se seleccionen 5 elementos hacia arriba y 5 abajo.

Se me ocurre algo asi:

for (var i = 0; i < count; i++) { //selectedItem
this.DojoGrid.selectedItem.data.cell+i;
} //FOR

Alguien tiene una idea?

glpunzi's picture

DojoGrid.select es la solución

Pues a mi este código (WM 6.4.5) me funciona perfectamente, realmente lo probaste?

button1Click: function(inSender) {
  try {
        var filaSeleccionada = this.departmentDojoGrid.getSelectedIndex();
        this.departmentDojoGrid.deselectAll();
        for (n=0; n<3;n++) {
           this.departmentDojoGrid.select(filaSeleccionada + n);
        }
  } catch(e) {
  console.error('ERROR IN button1Click: ' + e);
  }
  },

En tu caso como quieres los 5 anteriores y 5 posteriores, tendría que ser algo parecido (no lo he probado) tal que así, eso sí, controlando que no te salgas del dataset (si seleccionas el tercer elemento por ejemplo.

button1Click: function(inSender) {
  try {
        var filaSeleccionada = this.departmentDojoGrid.getSelectedIndex();
        this.departmentDojoGrid.deselectAll();
        for (n=0; n<11;n++) {
           this.departmentDojoGrid.select(filaSeleccionada + n - 5);
        }
  } catch(e) {
  console.error('ERROR IN button1Click: ' + e);
  }
  },

No toma Array

Estoy con la version 6
prueba y me dices .
+R+

glpunzi's picture

No he tenido tiempo a

No he tenido tiempo a probarlo....

Me refería a que la función select la pusieras dentro del for.

Has probado pasando un array? del estilo [5,6,7] al select?

glpunzi's picture

DojoGrid.select

Según la documentación el método a usar sería select(), y supongo, tener la propiedad select mode a multiple

http://dev.wavemaker.com/wiki/bin/wmjsref_6.4/DojoGrid_select

this.dojoGrid1.select(5); // selects the 5th row
this.dojoGrid1.select(5,false); // deselects the 5th row

Seleccionar mas de uno

Me refiero a que el ciclo FOR no selecciona mas de una fila, no puedo tener un rango de filas seleccionadas, ejemplo desde el rowId 13 hasta el 23, (el dojogrid lo probe en multiple extended)

Ciertamente aqui selecciono solo la 5,
this.dojoGrid1.select(5);
Que pasa si necesito la 5,6,7,8

+R+