Foro

Problema con CheckboxselectionModel

0
Hola a todos Tengo un grid cargado con los siguientes datos de un Json: {total:4,data:[{criterio:"Fallas Geologicas",peso:"30"},{criterio:"Geologia",peso:30}, {criterio:"Inundacion",peso:"20"},{criterio:"Bloques Geologicos",peso:"20"}] El valor de la columna peso se puede modificar, lo que deseo es agregar un boton que me permita capturar el nombre y el peso de los registros que sean activados activados por medio del checbox del CheckboxselectionModel para almacenarlos y poder insertar las modificaciones en una base de datos. Acá les dejo el codigo: com.quizzpot.tutorial.EditorGridTutorial = { init: function(){ var store = new Ext.data.JsonStore({ url: 'http://localhost:8080/Desarrollo/JSON.js', root: 'data', fields: ['criterio',{name:'peso',type:'float'}] }); var numberField = new Ext.form.NumberField({allowBlank:false}); var sm = new Ext.grid.CheckboxSelectionModel({singleSelect: false}); var Columnas = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), sm, {header:'Criterio', id:'Criterio', width: 120, dataIndex:'criterio',sortable: false}, {header:'Peso', width: 35, dataIndex:'peso',sortable: true, editor:numberField} ]); var grid = new Ext.grid.EditorGridPanel({ store: store, id:'grid', cm:Columnas, sm:sm, frame:true, border: false, columnLines:true, width: 250, height:200, stripeRows: true }); var win = new Ext.Window({ title: 'Editor Grid example', layout: 'fit', width: 230, height:200, buttons:[{text:'push'}, // boton que me permita capturar el criterio y peso activado items: grid }); win.show(); store.load(); } } Ext.onReady(com.quizzpot.tutorial.EditorGridTutorial.init,com.quizzpot.tutorial.EditorGridTutorial); He estado buscando en el foro y he encontrado que se puede capturar los registros seleccionados de la siguiente forma: var seleccionados = grid.getSelectionModel().getSelections(); lo implemente en mi codigo asi: buttons:[{text:'push', handler: function(grid,rowIndex,colIndex){ var seleccionados = Ext.getCmp('grid').getSelectionModel().getSelections(); alert(seleccionados);}} lo que ocurre es q me retorna un arreglo y no se como acceder a este para capturar el nombre del criterio y peso del registro seleccionado. Les agradecería su colaboración.
0
ya lo pude solucionar, aca les dejo el codigo de la funcion que llamo con un boton para capturar los valores de los registros en el grid. function mostrar(rec) { var Criterios = []; var Peso = []; sm.each(function(rec){ Criterios.push(rec.get('criterio')); Peso.push(rec.get('peso')); });

¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook

Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.