DHR*_*SAL 0 jquery tablesorter jquery-plugins
在我的Web应用程序中,我维护了用户记录表.在客户端发送时添加和删除记录,而不是用户单击"保存"按钮以保存在服务器上完成的所有操作.
我已经将表分类器应用于表上的排序功能.但令人惊讶的排序功能只适用于ID字段,即表的第一个字段,但对于所有其他字段,它给出错误(来自chrome的错误跟踪)
Uncaught TypeError: Cannot read property 'type' of undefined
multisortjquery.tablesorter.js:600
$.extend.tablesorter.construct.each.$headers.click.mousedown.onselectstart
Run Code Online (Sandbox Code Playgroud)
这是表结构.
<table id="contentTable" class="tablesorter">
<thead>
<tr>
<th> ID </th>
<th> Name </th>
<th> Birth Date </th>
<th> City </th>
<th id="actionheader"> Action</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
在此我动态添加数据.在这种情况下,排序仅适用于第一个字段,即ID字段
这就是我初始化tableSorting的方法.
function initializeTableSorting() {
$("#contentTable").tablesorter({
sortList : [[0, 0]],
headers : {
0 : {
sorter : "integer"
},
1 : {
sorter : "text"
},
2 : {
sorter : false
},
3 : {
sorter : "text"
},
4 : {
sorter : false
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
如果从初始化中删除false选项,如何使所有字段,甚至日期字段都能正常工作?
有"完全"相同的问题并且不知道如何解决它,花了一些时间,但最终认为我在tableSorter中为数据提供了一个空行(后面是有效的行).虽然我可以在HTML中看到有效的数据,但在源代码中我错过了一个空的前行......这可能搞砸了TableSorter JS.
删除了开始的空行 (在thead之后,但在任何其他数据之前)并且此问题已解决.