Cómo mostrar u ocultar un botón en datatable de acuerdo al valor json recibido

Cómo mostrar u ocultar un botón en datatable de acuerdo al valor json recibido

hwgaby87hwgaby87 Posts: 1Questions: 0Answers: 0

Link to test case:
Debugger code (debug.datatables.net):
Error messages shown:
Description of problem:

Hola. Deseo crear distintos botones en la última columna del datatable de acuerdo a los valores del json obtenido de la BD.
Quiero que btn_pagarModal1 solo se vea (o esté activo) cuando cantidad > 0;

El datatable:

var tablaSemestre1 = $("#tablaSemestre1").DataTable({
    ajax: "<?php echo base_url();?>/cuotaSocial/listarCuotasActivasPrimero",
    dom: "Bfrtip",
    order: ["1", "asc"],
    responsive: true,
    lengthChange: false,
    autoWidth: false,

    columns: [
      {}, //Id
      {}, //id
      {}, //nya
      {
          "<div class='btn-group'><button type='button' class='btn btn-secondary' data-toggle='tooltip' data-placement='top' title='Modificar' id='btn_modificar'><i class='fas fa-pen'></i></button><button type='button' class='btn btn-success' data-toggle='tooltip' data-placement='top' title='Pagar' id='btn_pagarModal1'><i class='fas fa-money-bill-wave'></i></button></div>",
        }
      },
    ],

    language: {
      sProcessing: "Procesando...",
      sLengthMenu: "Mostrar _MENU_ registros",
      sZeroRecords: "No se encontraron resultados",
      sEmptyTable: "Ningún dato disponible en esta tabla",
      sInfo: "Mostrando del _START_ al _END_ de un total de _TOTAL_ registros",
      sInfoEmpty: "Mostrando del 0 al 0 de un total de 0 registros",
      sInfoFiltered: "(filtrado de un total de _MAX_ registros)",
      sInfoPostFix: "",
      sSearch: "Buscar:",
      sUrl: "",
      sInfoThousands: ",",
      sLoadingRecords: "Cargando...",
      oPaginate: {
        sFirst: "Primero",
        sLast: "Último",
        sNext: "Siguiente",
        sPrevious: "Anterior",
      },
      oAria: {
        sSortAscending:
          ": Activar para ordenar la columna de manera ascendente",
        sSortDescending:
          ": Activar para ordenar la columna de manera descendente",
      },
    },
  });

El Json:

foreach ($socio as $key => $value) {
            $result["data"][] = [
                $value["idSocios"],
                $value["idSocios"],
                $value["apellido"] . ", " . $value["nombre"],
                $value["cantidad"],
            ];
        }

        echo json_encode($result);

Replies

Sign In or Register to comment.