2017-02-21 20 views
0

動作しない私のDataTableのHTMLコードです:jQueryのデータテーブル、列の並べ替えは、ここで

<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年にさかのぼるので、私はコルパンなしでトータルを表示しようとした場合を除いて解決策はないと考えています(フッタのヘッダーを複製して無関係のものにinvisiblity: hiddenを適用します)。

+0

返信ありがとうございます@セバスチャン。私はむしろcolReorderを無効にするほうがいいと思う。これを行う上での問題は、私のアプリケーションで多数のデータセットを作成するために同じメソッドを使用していることです。 colReorderをfalseに設定する必要がある場合は、このテーブルのためだけに新しいメソッドを記述する必要があります。テーブルの初期化後にcolReorderingを動的に無効にする方法はありますか? – rav

+0

私はあなたのテーブルの初期化をどう扱っているのか分かりませんが、最初はテーブルのinitで使うことができるグローバルvar 'colReorder'を持っていて、' destroy:true' initオプションで指定します。このテーブルを初期化する必要がある場合は、グローバル変数をfalseに設定し、データテーブルを最初のように再初期化することができます( 'destroy:true'がこれを可能にします)。それが役に立てば幸い! – Sebastianb

関連する問題