2017-02-21 5 views
0

здесь HTML-код для моего DataTable:JQuery DataTable с колонтитул, колонка переназначение не работает

<table id="table" width="100%"> 

     <thead> 
      <tr> 
       <th id="header0">number</th> 
       <th id="header1">name</th>     
       <th id="header2">project</th> 
       <th id="header3">date</th> 
       <th id="header4">status</th>      
       <th id="header5">total</th>   
      </tr> 
      <tfoot > 
       <tr> 
        <th colspan="5" style="text-align:right">total:</th> 
        <th></th> 
       </tr> 
      </tfoot>   
     </thead>    
    </table> 

Я colReorder значения ИСТИНЫ для этой таблицы. Пока я удаляю нижний колонтитул таблицы, упорядочение столбцов, кажется, работает нормально. Но когда у меня есть нижний колонтитул и пытаюсь перетащить столбцы, это только заголовки столбцов, которые перемещаются, оставляя данные как есть и приводя к следующей ошибке в консоли: Uncaught TypeError: Failed to execute 'insertBefore' on 'Node': parameter 1 is not of type 'Node'. Есть ли другой способ решить эту проблему? выпуск или, по крайней мере, способ показать общее количество без использования footer?

ответ

1

По-видимому, the issue involves the colspan in the footer. Это обсуждение датируется 2013 годом, поэтому я не думаю, что для этого есть решение, за исключением того, что мы пытаемся показать общее количество без colspan (возможно, дублируем заголовки в нижнем колонтитуле и применяем invisiblity: hidden к нерелевантным?).

+0

Спасибо за ответ @Sebastian. Думаю, я предпочел бы отключить colReorder. Проблема для этого заключается в том, что я использую один и тот же метод, чтобы собрать кучу данных в моем приложении. Если мне нужно установить colReorder в false, мне нужно написать новый метод только для этой таблицы. Есть ли способ динамически отключить colReordering после инициализации таблицы? – rav

+0

Я действительно не знаю, как вы обрабатываете инициализацию таблиц, но я думаю, вы могли бы иметь глобальный var 'colReorder', изначально истинный, который вы могли бы использовать в таблице init, а также включить' destroy: true' в параметрах init. Если вам нужно инициализировать эту таблицу, вы можете установить глобальное значение var в false и повторно инициализировать данные, как если бы это было в первый раз ('destroy: true' разрешил бы это). Надеюсь, поможет! – Sebastianb

Смежные вопросы