第一次发布到stackoverflow!
非常喜欢tablesorter及其灵活性。谢谢!
我有一个编码名称,希望在不显示任何地方的情况下对姓氏进行排序。 我目前使用两个列,代号(first_name last initial)和第二个(姓氏)上没有标签。 这是我的标题行:
<th>Participant</th>
<th class='sorter-sortlast' title='Last Name'> </th>
以下是一些数据:
<tr>
<td>BobF</td>
<td sort_code='001022'></td>
</tr>
<tr>
<td>GeorgeB</td>
<td sort_code='001007'></td>
</tr>
和我的解析器
$.tablesorter.addParser({
id: 'sortlast',
is: function(s, table, cell, $cell) {
return false;
},
format: function(s, table, cell, cellIndex) {
return cell.getAttribute('sort_code'); //s;
},
parsed: true,
type: 'numeric'
});
问题: 我怎样才能改进这一点,以便我
疑惑:
我看到一些代码可以捕获标题点击并根据现有类更改内容,这里: how to get current sort order from tablesorter plugin? 这可能是一个解决方案。它改变了类,即headerSortDown。我可以更改标题文本以指示它现在按姓氏排序。难以转换 - 点击多种 - 或者是吗?! sort_code将移至第一列,第二列将消失。
如果我要做这个css方法,我该如何更改列的宽度,特别是第二列(姓氏)并隐藏两列之间的分隔符?我尝试添加一个类(.hideLeftBorder,.hideRightBorder)来做到这一点,但没有。我通过将css直接放入th和td:style ='border-right-width:0;'来强制它。 这看起来没问题,除了过多的填充。 (我在哪里删除它,请,顺便说一下?)
感谢您的考虑!
答案 0 :(得分:0)
您似乎正在使用此fork of tablesorter,所以幸运的是已经有一些示例。
在上述两种情况下,都不需要隐藏列。所有数据都可以进入一个单元格。
此外,您发现捕获标题点击的代码是为原始tablesorter编写的,因为类名已完全更改;无论如何,使用sortList
值来计算排序方向会更有效。
最后,这与上述答案无关,但我不建议添加像sort_code
这样的表格单元属性,而是使用HTML5数据属性(例如data-sort-code
)。