2015-03-15 1 views
0

Я пытаюсь реализовать динамически показывать скрытые столбцы в рельсах с помощью плагина dataTable.Таблицы Datae Динамически отображать/скрывать столбцы не работают в Rails

Кнопка «Показать скрытие» видна, но когда я снимаю столбец, он не исчезает из таблицы. Столбец должен появляться только тогда, когда я нажимаю флажок true, если я сниму его, это не должно быть в списке столбцов.

Пожалуйста, помогите мне, как исправить это !.

_merchent.html.erb # partail файл

<div id="merchant_list" class="panel-body"> 
    <div class="table-success"> 
     <table id = "table_id" class="table table-bordered"> 
     <thead> 
     <tr> 
      <th>Merchant</th> 
      <th>Bank Name</th> 
      <th>Payment Gateway</th> 
      <th>Status</th> 
      <th>Amount</th> 
      <th>Discount</th> 
      <th>Additional Charges</th> 
      <th>Added On</th> 
     </tr> 
     </thead> 
     <tbody id="details"> 
     <% @all_settlement_details.each do |sd| %> 
      <tr> 
       <td><%= sd.merchantname %></td> 
       <td><%= sd.bank_name %></td> 
       <td><%= sd.payment_gateway %></td> 
       <td><%= get_status(sd.status) %></td> 
       <td><%= sd.amount %></td> 
       <td><%= sd.discount %></td> 
       <td><%= sd.additional_charges%></td> 
       <td><%= get_added_on_date sd.addedon %></td> 
      </tr> 
     <% end %> 
     </tbody> 
     </table> 
     <div id="align"> 
     <a href="" class="load-more" data-clicks="1">Load more...</a> 
     </div> 
    </div> 
    </div> 
</div> 

merchant.js файл

$(document).ready(function(){ 

$('#table_id').DataTable({ 
    "dom": 'C&gt;"clear"&lt;lfrtip', 
    paging: false, 
    searching: false 
}); 

Пожалуйста, смотрите соответствующий образ.

enter image description here

ответ

0

Вы смотрели на http://www.datatables.net/examples/api/show_hide.html?

$(document).ready(function() { 
    var table = $('#example').DataTable({ 
     "scrollY": "200px", 
     "paging": false 
    }); 

    $('a.toggle-vis').on('click', function (e) { 
     e.preventDefault(); 

     // Get the column API object 
     var column = table.column($(this).attr('data-column')); 

     // Toggle the visibility 
     column.visible(! column.visible()); 
    }); 
}); 

Мы должны видеть ваш код, прикрепленный к флажкам, чтобы узнать, в чем проблема.

0

Через несколько часов я наконец выяснил решение.! Все в порядке, но библиотеки, которые я включил, были устаревшими. Поэтому я изменил эти две библиотеки. Теперь он работает.

http://cdn.datatables.net/colvis/1.1.1/css/dataTables.colVis.css 

http://cdn.datatables.net/colvis/1.1.1/js/dataTables.colVis.min.js 
Смежные вопросы