Datatable + Dataset + checkbox

Srs,

Tenho um Datatable alimentado por um dataset, onde o usuário seleciona os registros que deseja imprimir. Da maneira atual ele precisa pressionar CTRL quando desejar selecionar mais de um registro, eu preciso adicionar um checkbox nessa tabela pra melhor o uso, porém não encontrei nada que funcionasse. Alguém já fez algo assim?

Abaixo o código que carrega o datatable.


var myTable = FLUIGC.datatable('#promo',{
    multiSelect: true,
    classSelected: 'danger',
    limit: 5,
    offset: 0,
    limitKey: 'limit',
        dataRequest : mydata,
        renderContent : ['codigo', 'descricao','descricaob', 'categoria' ,'preco' ],
           header : [{
                        'title' : 'codigo',
                        'size' : 'col-md-4'
                }, {
                        'title' : 'descricao',
                        'standard' : true,
                                                'size' : 'col-md-4'
                }, {
                        'title' : 'descricaob',
                        'size' : 'col-md-4'
                                }, {
                        'title' : 'categoria',
                        'size' : 'col-md-4'
                                }, {
                        'title' : 'preco',
                        'size' : 'col-md-4'
                }],

Voce pode fazer algo assim no seu JavaScript


var isCtrlPress = false;
$(document).keydown(function(e) { 
   if (e.keyCode == 17) { 
     isCtrlPress = true;
   }
}).keyup(function(e) { 
   if (e.keyCode == 17) { 
     isCtrlPress = false;
   }
});

function onLinhaClick() {
  if(isCtrlPress) {
    fazAcao();
  }
}

@Matheus, boa tarde!!

É possível utilizar um template para o carregamento do datatable. No html insira a tag script exemplificada abaixo:


<script type="text/template" class="template_datatable">
    <tr>
        <td>
            <input type="checkbox">
        </td>
        <td>{{codigo}}</td>
        <td>{{descricao}}</td>
        <td>{{descricaob}}</td>
        <td>{{categoria}}</td>
        <td>{{preco}}</td>
    </tr>
</script>

Na chamada do datatable, altere o atributo renderContent, ao invés do array, será a class do seu template.


renderContent: '.template_datatable',

Como está inserindo mais uma coluna para a tabela, não esqueça de acrescentar esta coluna no atributo header!

Qualquer dúvida, na documentação do style-guide é exemplificado a utilização de templates!

https://style.fluig.com/javascript.html#fluig-datatable

Rodolfo,

Valeu cara, rodou certinho!