[Resuelto] problema con datatables para acceder a un valor del objecto json

Iniciado por gAb1, 6 Enero 2016, 02:52 AM

0 Miembros y 1 Visitante están viendo este tema.

gAb1

Llevo un buen rato comiendome la cabeza y volviendome loco porque estoy intentando coger un valor del objeto para usarlo en un boton de la tabla. Necesito coger el id de la fila seleccionada (la primera columna y posición en el objeto).

Así inicializo datatables:

Código (javascript) [Seleccionar]
var table = $('#example').DataTable( {
   serverSide: true,
   dom: 'Bfrtip',
   ajax: '/get?op=2',
   columns: [
       { data: 'id' },
       // more columns
   ],
   buttons: [
       {
           text: 'New',
           action: function ( e, dt, node, config ) {
               window.location.href = '/url?op=new'
           }
       },
       {
           text: 'Modify',
           action: function ( e, dt, node, config ) {
               window.location.href = '/url?op=modify&id=' + dt.row( { selected: true } ).id() )
           },
           enabled: false
       },
       {
           text: 'Delete',
           action: function ( e, dt, node, config ) {
           },
           enabled: false
       }
   ],
   select: true
} );


Según la documentación asi es como se cogen los datos... He probado de varias maneras, usando un alert():

Código (javascript) [Seleccionar]
alert( dt.row( { selected: true } ).id() );  // undefined
alert( JSON.stringify(dt.row( { selected: true } ).id()) );  // "undefined"
alert( JSON.stringify(dt.row( { selected: true } ).data()[0]) );  // undefined


Lo raro es que si que puedo acceder al objeto y ver todo lo que tiene...

Código (javascript) [Seleccionar]
alert( JSON.stringify(dt.row( { selected: true } ).data()) );
// {"id":1,"key":"value","etc":"etc"}


¿Alguna idea?  :huh:

Edito: Solucionado:


Código (javascript) [Seleccionar]
var rw = dt.rows({ selected: true }).data()[0];
alert(rw.id);  // 1