在使用变量作为列索引的列上使用 jQuery Tablesorter filter-formatter 小部件
Posted
技术标签:
【中文标题】在使用变量作为列索引的列上使用 jQuery Tablesorter filter-formatter 小部件【英文标题】:Using jQuery Tablesorter filter-formatter widgets on column using a variable as column index 【发布时间】:2014-02-03 23:48:08 【问题描述】:我正在尝试使用 Tablesorter 的 widgetOptions 中的 filter_formatter 将两个字段 uiDatepicker 应用于标题中包含“日期”的任何列标题。表中的所有其他列都有常规过滤器。当我使用零基数(0= 第一列)指定 col 索引时,我可以让这一切正常工作。我认为这将是一个简单的过程,它找到包含“日期”的标题的列索引并将其作为变量传递给 filter_formatter,但列索引似乎不接受变量。
我希望我已经足够清楚地解释了这一点。谁能帮忙。
dateColumn = $('th:contains("Date")').index();
$('table').tablesorter(
widgets: ["zebra", "filter", "uitheme"],
widgetOptions :
filter_columnFilters : true,
filter_startsWith : true,
filter_searchDelay : 300,
filter_reset : '.reset',
filter_formatter :
dateColumn : function ($cell, indx)
return $.tablesorter.filterFormatter.uiDatepicker( $cell, indx,
textFrom: 'from', // "from" label text
textTo: 'to', // "to" label text
dateFormat: 'dd/mm/yy' ,
changeMonth: true,
changeYear : true
);
);
这就是我认为可以让它发挥作用的方法。当 'dateColumn' 替换为 '1'(或其他数字)时,它会起作用。最终,我认为我需要为同一个表中的多个日期列包含一个“每个”循环。谢谢
【问题讨论】:
【参考方案1】:遗憾的是,filter_formatter
函数不能这样工作。现在,您必须在表初始化之前设置filter_formatter
。我确实计划允许按类或 id 引用列(请参阅issue #237),但我还没有编写出代码。
var filterFormatter = ;
$('table thead .date').each(function()
var column = $(this).index(); // assuming no colspans in the row
filterFormatter[column] = function ($cell, indx)
return $.tablesorter.filterFormatter.uiDatepicker( $cell, indx,
textFrom: 'from', // "from" label text
textTo: 'to', // "to" label text
dateFormat: 'dd/mm/yy' ,
changeMonth: true,
changeYear : true
);
);
$('table').tablesorter(
widgets: ["zebra", "filter", "uitheme"],
widgetOptions :
filter_columnFilters : true,
filter_startsWith : true,
filter_searchDelay : 300,
filter_reset : '.reset',
filter_formatter : filterFormatter
);
【讨论】:
这正是我想要做的。做得好。谢谢你。这是一种享受。以上是关于在使用变量作为列索引的列上使用 jQuery Tablesorter filter-formatter 小部件的主要内容,如果未能解决你的问题,请参考以下文章
pandas使用read_csv函数读取csv数据header参数指定作为列索引的行索引列表形成复合(多层)列索引使用方括号[]基于最外层列索引名称索引列数据
pandas读取csv数据header参数指定作为列索引的行索引列表形成复合(多层)列索引使用iloc基于行索引位置列表筛选dataframe数据中指定位置的多个数据行
pandas读取csv数据header参数指定作为列索引的行索引列表形成复合(多层)列索引使用set_index函数把数据列转化为行索引(keys参数指定需要被转化的层列索引)
pandas读取csv数据header参数指定作为列索引的行索引列表形成复合(多层)列索引使用set_index函数把数据列转化为行索引(keys参数指定需要被转化的层列索引)