使用Datatable来格式化表,但是,它将不适用于我的所有表,只有一个



我在application.js中有以下内容,我也试过把它放在prices.coffee.js

jQuery ->

$('#container').dataTable();

但是,下面的表不会在DataTable设计中格式化:

<h2>Energy Prices</h2>
<p id="notice"><%= notice %></p>
<table id ="container" class="display">
<thead>
<tr>
    <th>ID</th>
    <th>Month</th>
    <th>Elec</th>
    <th>Gas</th>
    <th>Biomass</th>
</tr>
</thead>
<tbody>
<% @usages.each do |usage| %>
<tr>
    <td><%= usage.price.usage_id %></td>
    <td><%= usage.month.strftime("%b %Y") %></td>
    <% usage.price.attributes.each do |k,v| %>
        <% if v.nil? %>
            <td>N/A</td>
        <% elsif k != "created_at" && k != "updated_at" && k != "month" && k != "id" && k != "usage_id" %>
            <td><%= v %></td>
        <% end %>
    <% end %>
    <td><%= link_to "Edit", edit_price_path(usage) %> </td>
</tr>
<% end %>
</tbody>
</table>

id每页只能使用一次。我想你的问题是,你有多个表都使用相同的ID。请尝试使用classdata-*属性。

<table class="container">
$('table.container').dataTable();

或:

<table data-whatever="container">
$('table[data-whatever="container"]').dataTable();

相关内容

最新更新