DataTables gem不起作用

时间:2015-12-21 23:35:21

标签: jquery ruby-on-rails ruby-on-rails-4 gem datatables

我无法使用jquery-datatables-rails gem。我怀疑bootstrap-sass gem中的bootstrap 3引起了这个问题。

宝石

gem 'sass-rails', '~> 5.0'
gem 'jquery-datatables-rails', git: 'git://github.com/rweng/jquery-datatables-rails.git'
gem 'jquery-ui-rails'
gem 'bootstrap-sass', '3.3.6'

<table id="table" class="display">
  <thead>
    <tr>
      <th>Item Name</th>
      <th>Item Name</th>

    </tr>
  </thead>
  <tbody>

 <% @items.each do |item| %>
    <tr>
     <td><%= item.id %></td>
     <td><%= item.name %></td>
    </tr>
    <% end %>
  </tbody>
</table>

的application.js

//= require jquery
//= require jquery_ujs
//= require dataTables/jquery.dataTables
//= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
//= require bootstrap-sprockets
//= require jquery-ui

application.css.scss

 *= require dataTables/jquery.dataTables
 *= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
 *= require jquery-ui
 *= require dataTables/src/demo_table_jui

@import "bootstrap-sprockets";
@import "bootstrap"; 

.coffee文件

jQuery ->
  $('#table').dataTable
    sPaginationType: "full_numbers"
    bJQueryUI: true

我将一些数据表样式化。但是js功能都没有用,它基本上只是一张空白表。我已经完成了几次安装,并用谷歌搜索了我能做的一切,但无法找到问题所在。

1 个答案:

答案 0 :(得分:1)

我设法通过执行以下操作来实现此目的:

  • 删除Datatables gem并重新安装它,并确保我使用boostrap3参数安装。
  • 从头开始创建表。
  • 指定一个css类(而不是id)并使用我的js文件中的类来引用该表(例如在我的视图中:table class =&#34; newtable&#34;以及我的js $(.newtable) ))
  • 确保表标记是平衡的(例如,确保与td标记的标记数相同)。
  • 在索引视图中(表格周围)删除div(Rails默认生成)。

我希望这有帮助,如果您需要更多细节,请告诉我。