TableSorter - 将图标应用于未排序的列

时间:2015-12-18 16:28:39

标签: javascript html css tablesorter

我有一个tableorter表,我已经对以下CSS中应用的图标进行了整理和排序

.tablesorter-headerSortDown {
    background-image: url("../images/sort_down.png");
    background-size: 16px 16px;
}
.tablesorter-headerSortUp   {
    background-image: url("../images/sort_up.png");
    background-size: 16px 16px;
}

我为.tablesorter-icon尝试使用类似的CSS来应用未排序的图片(左箭头代替上下)

我还尝试了.tablesorter-header的css,它会覆盖向上和向下箭头,并且始终存在。

这是否有CSS类?我应该处理这个初始化吗?

感谢阅读,

Tablesorter init

$(function() {
  $(".tablesorter")
    .tablesorter({
      widthFixed: false,
      sortList: [
            [0,0],
            [1,0]
        ],
        showProcessing: true,


      // this is the default setting
      cssChildRow: "tablesorter-childRow",

      // initialize zebra and filter widgets
      widgets: ["zebra", "filter", "stickyHeaders"],

      headers: { 0: { filter: true, sorter: true },
                 1: { filter: true, sorter: true },
                 2: { filter: false, sorter: true },
                 3: { filter: false, sorter: true },
                 4: { filter: false, sorter: false },
                 5: { filter: false, sorter: false },
                 6: { filter: false, sorter: false },
                 7: { filter: false, sorter: false },
                 8: { filter: false, sorter: false }},

      widgetOptions: {
        stickyHeaders_attachTo: '#connectionGrid',
        stickyHeaders_offset: 0,
        stickyHeaders_yScroll : '#tablesorter',
        stickyHeaders_addCaption: true,
        // include child row content while filtering, if true
        filter_childRows  : true,
        // class name applied to filter row and each input
        filter_cssFilter  : 'tablesorter-filter',
        filter_reset : '.clearall',
        // search from beginning
        filter_startsWith : false,
        // Set this option to false to make the searches case sensitive
        filter_ignoreCase : true,
        filter_functions : { 0 : true, 2 : true },
        sortInitialOrder: "desc",
        zebra : ["odd-row", "even-row" ]
      }

    });

编辑:这就是现在的样子,我想为所有未排序的列添加一个箭头。 enter image description here

2 个答案:

答案 0 :(得分:2)

问题是您正在使用css作为原始tablesorter(v2.0.5),并且您使用的过滤器小部件仅适用于我的fork of tablesorter(目前为v2.25.0)。

原始的tablesorter使用"tablesorter-headerSortUp",它实际上是用于降序排序的名称(由于某种原因它是向后的)。叉子使用"tablesorter-headerAsc",由cssAsc option设置。还有cssDesc(设置为"tablesorter-headerDesc")选项。

无论如何,为了达到目的......

fork有一个内置的"tablesorter-noSort"类(由cssNoSort option设置,它应用于标题单元格。

如果您在headerTemplate option中添加了图标,则可以设置cssIconNone option以定位图标。

答案 1 :(得分:0)

我相信我找到了一个解决方案,虽然使用HTML5的解决方法可能不是最好的用法,但

.tablesorter-header:not(.tablesorter-headerSortUp):not(.tablesorter-headerSortDown)

将CSS应用于未向上或向下排序的所有标题