只使用JQuery Table Sorter Plug-In排序一列

时间:2015-06-17 22:40:01

标签: jquery asp.net sorting gridview tablesorter

我使用jQuery的tablesorter插件在客户端对我的gridview进行排序。但问题是,我必须将该排序选项仅用于一列。 (gridview中的列号为7)

 $("#<%=gvResults.ClientID%>").tablesorter();

我们如何通过表格分拣机插件实现这一目标。请提出任何建议

2 个答案:

答案 0 :(得分:2)

如果您知道将启用排序的列索引,请按如下方式设置headers选项:

$(function(){
  $('table').tablesorter({
    headers : {
      // zero-based column index
      0 : { sorter: false },
      1 : { sorter: false },
      2 : { sorter: false },
      3 : { sorter: false },
      4 : { sorter: false },
      5 : { sorter: false }
    }
  });
});

上述代码适用于原始的tablesorter和我的fork of tablesorter

如果你碰巧使用我的forkorter分支,那么你可以在标题中添加类名:

<th class="sorter-false">column 1</th>
<th class="sorter-false">column 2</th>
<th class="sorter-false">column 3</th>
<!-- etc -->
<th>column 7</th>

然后在没有任何额外选项的情况下初始化tablesorter:

$(function(){
  $('table').tablesorter();
});

答案 1 :(得分:0)

消除课程标题&#39;从标题中你不想要排序,例如,如果它只是你想要排序的第七行,写

$('.header').not('.header:nth-child(7)').removeClass('header');

在开始时通过添加此html运行:

<script>
    $(document).ready(function()
    {
        $('.header').not('.header:nth-child(7)').removeClass('header');
        $('.header').not('.header:nth-child(7)').click(function(event)
        {
            event.preventDefault();
        });
        $('.headerSortDown').removeClass('headerSortDown');  // fixes a bug
        $('.headerSortUp').removeClass('headerSortUp');  // fixes a bug
    });
</script>