tablesorter从选择下拉菜单和自定义时间过滤器中选择多个选项?

时间:2013-09-22 12:51:28

标签: javascript jquery datetime tablesorter

有没有办法从选择下拉菜单中选择多个选项并显示结果。就像我的小提琴一样,我的名字是第一列,想要选择并展示Aaron和Clark的时间。个别可能。但是如果需要选择两个选项呢?如何实现这一目标?

而且,如何应用自定义时间过滤器,如

  

早上(6到12岁)

     

下午(12至18岁)

     

晚上(18至21岁)

这是我尝试过的,但它不起作用。事实上,这些选项甚至没有显示在选择框中。

http://jsfiddle.net/QJnEa/

   filter_functions : {

    1 : {
      "Morning"      : function(e, n, f, i) { return n < 12; },
      "Afternoon" : function(e, n, f, i) { return n >= 12 && n <=18; },
      "Evening"     : function(e, n, f, i) { return n > 18; }
    }

仅显示时间。不知道如何编码多个选择。

1 个答案:

答案 0 :(得分:0)

在该演示中,时间列中有一个类名“filter-select”,它覆盖了filter_functions。您需要做的就是删除该类

<th data-placeholder="Select a time block">Time</th>

然后更新filter_functions以使用精确的(e)值而不是标准化值(n),这实际上是一个非常大的数字(自2000年1月1日以来的秒数;由time parser)定义。

filter_functions: {

    1: {
        "Morning": function (e, n, f, i) {
            return parseInt(e, 10) < 12;
        },
        "Afternoon": function (e, n, f, i) {
            var num = parseInt(e, 10);
            return num >= 12 && num <= 18;
        },
        "Evening": function (e, n, f, i) {
            return parseInt(e, 10) > 18;
        }
    }
}

至于问题的第二部分,过滤器小部件当前不支持多选元素。它可能在将来;但与此同时,您可能需要查看使用表格外部this demoselect2 plugin(仍处于测试阶段)。