Laravel-datatables: Atributos en la celda td

Creado en 16 mar. 2016  ·  3Comentarios  ·  Fuente: yajra/laravel-datatables

Resumen del problema o solicitud de función

No puedo crear atributos personalizados con los datos de la colección. Ejemplo: <td data-order="data"></td> . Crear atributos personalizados para la fila funciona bien, pero necesito crear atributos para una celda ( <td> ). ¿Es posible? Este es mi código ...

Fragmento de código del problema

return Datatables::of($users)
            ->addColumn('action', function ($user) {
                return '<a href="#edit-'.$user->id.'" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>';
            })
            ->editColumn('id', '{{$id}}')
            ->removeColumn('password')
            ->setRowId('id')
            ->setRowClass(function ($user) {
                return $user->id % 2 == 0 ? 'alert-success' : 'alert-warning';
            })
            ->setRowData([
                'id' => 'test',
            ])
            ->setRowAttr([
                'color' => function($user){
                        return $user->color;
                }
            ])
            ->make(true);

Detalles del sistema

  • Ubuntu
  • PHP 5.9
  • Laravel Versión 5.1

Comentario más útil

No se puede agregar un atributo en td en el lado del servidor. Pero se puede hacer en el lado del cliente a través del script js usando createdRow callback. Vea el fragmento de ejemplo a continuación. Fuente: http://datatables.net/forums/discussion/31139/how-to-add-data-attribute-in-a-cell-server-side

$('#data-table').DataTable({
    ajax: 'some_url',
    createdRow: function( row, data, dataIndex ) {
        $( row ).find('td:eq(2)').attr('data-validate', '1');
    }
});

Todos 3 comentarios

No se puede agregar un atributo en td en el lado del servidor. Pero se puede hacer en el lado del cliente a través del script js usando createdRow callback. Vea el fragmento de ejemplo a continuación. Fuente: http://datatables.net/forums/discussion/31139/how-to-add-data-attribute-in-a-cell-server-side

$('#data-table').DataTable({
    ajax: 'some_url',
    createdRow: function( row, data, dataIndex ) {
        $( row ).find('td:eq(2)').attr('data-validate', '1');
    }
});

¡¡Gracias!! Ese código funciona bien;)

@yajra, ¿ se

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

sangnguyenplus picture sangnguyenplus  ·  3Comentarios

josiahke picture josiahke  ·  3Comentarios

t0n1zz picture t0n1zz  ·  3Comentarios

hohuuhau picture hohuuhau  ·  3Comentarios

Abdulhmid picture Abdulhmid  ·  3Comentarios