在该项目中我使用了jquery.dataTables.js来作为我的前端数据表格。
表格的官网地址:https://www.datatables.net/
一、jsp部分代码片段如下:
1 <table id="dynamic-table" 2 class="table table-striped table-bordered table-hover"> 3 <thead> 4 <tr> 5 <th class="center"><label class="pos-rel"> <input 6 type="checkbox" class="ace" /> <span class="lbl"></span> 7 </label></th> 8 <th>文件名称</th> 9 <th>日期</th> 10 <th>绝对路径</th> 11 <th>操作</th> 12 <!-- <th style="display: none">绝对路径</th> --> 13 </tr> 14 </thead> 15 16 <tbody> 17 <c:forEach items="${fileList}" var="file"> 18 <tr> 19 <td class="center"><label class="pos-rel"> <input 20 type="checkbox" class="ace" /> <span class="lbl"></span> 21 </label></td> 22 <td>${file.name }</td> 23 <td>${file.date }</td> 24 <td>${file.path }</td> 25 <td> 26 <div class="hidden-sm hidden-xs action-buttons"> 27 <a class="red" href="#"> <i 28 class="ace-icon fa fa-trash-o bigger-130"></i> 29 </a> 30 </div> 31 </td> 32 </tr> 33 </c:forEach> 34 </tbody> 35 </table>
二、js代码片段如下:
1 var oTable1 = $('#dynamic-table') 2 .dataTable({ 3 bAutoWidth : false, 4 "aoColumns" : [ { 5 "bSortable" : false 6 }, null, null,null, null, { 7 "bSortable" : false 8 } ], 9 "aaSorting" : [], 10 });
三、运行的时候收到如下警告信息:
DataTables warning : Requested unknown parameter '5' from the data source for row 0
四、原因分析
html写了页面有5列数据,而js代码里定义了6列数据。
五、解决办法
在我的环境中,删除js中的一个null列,问题就解决了。