Использование диапазона строк в таблицах данных - PullRequest
0 голосов
/ 12 декабря 2018
{% raw %}

<table class="table table-striped table-bordered row" id="compare-table" style = "table-layout: fixed; margin-right: auto; margin-left: auto">
    <thead>
        <th class = "col-md-3 tableHeading">Configuration name</th>
        <th class = "col-md-3 tableHeading">Property Name</th>
        <th class = "col-md-3 tableHeading">Value 1</th>
        <th class = "col-md-3 tableHeading">Value 2 </th>
    </thead>
    <tbody>
    {{#each tableRows }}
        {{#each values}}
            <tr>
                {{#if @first}}
                <th  class="breakWord inlineHeading" rowspan={{../length}}>{{ ../pid }}</th>
                {{/if}}

                <td class="breakWord">{{ propName }}</td>
                <td class="breakWord">{{ propValueA }}</td>
                <td class="breakWord">{{ propValueB }}</td>
            </tr>
        {{/each}}
    {{/each}}
    </tbody>
</table>
{% endraw %}

Я должен визуализировать таблицу динамически после запроса ajax и хочу сгруппировать строки по имени-конфигурации.Когда я использую rowspan в таблице данных, отображается только простая таблица, и возникает ошибка консоли:

jquery.dataTables.min.js: 24 Uncaught TypeError: Невозможно установить свойство '_DT_CellIndex' изundefined

Я использую handlebars.js для заполнения шаблона таблицы

DATATABLE: https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"> https://cdn.datatables.net/1.10.19/js/dataTables.bootstrap.min.js">

Есть ли способ созданиятаблицы в этом формате, сохраняя функции Datatable.

enter image description here

1 Ответ

0 голосов
/ 12 декабря 2018

$(document).ready(function() {
   var table = $('#example').DataTable({
      'ajax': 'https://api.myjson.com/bins/qgcu',
      'rowsGroup': [2]
   });   
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="https://cdn.datatables.net/v/dt/dt-1.10.12/datatables.min.js"></script>
<script src="https://cdn.rawgit.com/ashl1/datatables-rowsgroup/fbd569b8768155c7a9a62568e66a64115887d7d0/dataTables.rowsGroup.js"></script>
<link href="https://cdn.datatables.net/v/dt/dt-1.10.12/datatables.min.css" rel="stylesheet"/>
<h3>jQuery DataTables - ROWSPAN in table body TBODY</h3>

<hr><br>
    
<table id="example" class="display" cellspacing="0" width="100%">
   <thead>
      <tr>
         <th>Name</th>
         <th>Position</th>
         <th>Office</th>
         <th>Extn.</th>
         <th>Start date</th>
         <th>Salary</th>
      </tr>
   </thead>
   <tfoot>
      <tr>
         <th>Name</th>
         <th>Position</th>
         <th>Office</th>
         <th>Extn.</th>
         <th>Start date</th>
         <th>Salary</th>
      </tr>
   </tfoot>
</table>

Использовать https://cdn.rawgit.com/ashl1/datatables-rowsgroup/fbd569b8768155c7a9a62568e66a64115887d7d0/dataTables.rowsGroup.js внешнюю библиотеку и применять 'rowsGroup': [index_of_column] в конфигурации данных.Я надеюсь, что это поможет вам.

...