Así inicializo datatables:
Código
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
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
alert( JSON.stringify(dt.row( { selected: true } ).data()) ); // {"id":1,"key":"value","etc":"etc"}
¿Alguna idea?

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