jQuery Tablesorter上textExtraction和addParser之间有什么不同

时间:2014-03-26 23:39:10

标签: jquery tablesorter

我不明白有什么不同,我试图找出哪一个最终知道什么是文本或什么用于排序。

1 个答案:

答案 0 :(得分:2)

初始化tablesorter时,它使用textExtraction函数从表中提取内容。例如,如果您的表格单元格具有此标记:

<tr>
    <td><span class="value hidden">42</span> Forty-Two</td>
    <td>Fred</td>
</tr>

可以将textExtraction函数设置为定位表格单元格中的特定文本。

textExtraction: function(){
    1: function(node, table, cellIndex) {
        return $(node).find('.value').text();
    }
}

另一方面,解析器从textExtraction函数中获取文本并对其进行操作,以便更容易排序。例如,如果我们有这个表标记:

<tr>
    <td>Fred</td>
    <td>1/31/2014</td>
</tr>

日期解析器(在本例中为shortDate解析器)将采用该日期&#34; 1/31/2014&#34;并将其转换为毫秒数:

new Date("1/31/2014").getTime() // result: 1391148000000

这个数字更容易排序和比较。

当然,两者之间存在一些重叠,因为我们可以使textExtraction函数执行此转换;但在内部,从textExtraction函数返回的任何值都被修剪(使用jQuery $.trim()),结果总是作为字符串返回。因此,结果与解析器的结果不完全相同。

我希望能回答你的问题。