// en lado del servidor
public function ajax()
{
$consulta['consulta']=$this->Model_Entidades->traerentidades();
/**
si la estructura del array de la consulta es la siguiente
$consulta['consulta'] = [
['columna1' => 1, 'columna2' => 1, 'columna3'=> '3', 'columna4' => 4],
['columna1' => 1, 'columna2' => 1, 'columna3'=> '3', 'columna4' => 4],
['columna1' => 1, 'columna2' => 1, 'columna3'=> '3', 'columna4' => 4],
]
*/
// puedes añadir otra columna a cada element del array de consulta
foreach($consulta['consulta'] as $key => $value) {
$consulta['consulta'][$key]['boton'] = '<button>Botón</button>';
}
echo $x=json_encode($consulta['consulta']);
}
if you want to add a column from javascript it would be similar to the server
var consulta = {
consulta: [,
{'columna1': 1, 'columna2' : 1, 'columna3': '3', 'columna4': 4},
{'columna1': 1, 'columna2' : 1, 'columna3': '3', 'columna4': 4},
{'columna1': 1, 'columna2' : 1, 'columna3': '3', 'columna4': 4}
]
};
var datatable = consulta['consulta']
.reduce(function(prev, next) {
var nuevoValor = Object.assign({}, next, {boton: '<button>Boton</button>'});
return prev.concat(nuevoValor);
}, []);