在 Tablesorter 中过滤。意外行为
Filtering in Tablesorter. Unexpected behaviour
在我的 tablesorter 中,我将此 addParser 应用于我在此问题中显示的列。它运行良好,但是当我以某种方式进行过滤时,我发现了一个意想不到的行为。
没有过滤的结果如下图:
addParser 的代码是下一个:
$.tablesorter.addParser({
// set a unique id
id: 'kilogramos',
is: function(s) {
// return false so this parser is not auto detected
return false;
},
format: function(s) {
// format your data for normalization
return parseFloat(s.replace(' Kg','').replace('.',''));
},
// set type, either numeric or text
type: 'numeric'
});
如果我使用“>=”,它似乎应用了 addParser,因为我可以去掉“.”。和“Kg”,它找到 11.689 Kg 结果。
但似乎如果我不使用“>”或“>=”等运算符,行为就会改变,它需要点来找到你想要得到的东西。在接下来的图片中我展示了我的意思。
在最后一张图片中,我没有使用运算符,也没有找到任何结果。相反,它现在需要“。”甚至“公斤”也有效。下图证明:
我只是不想需要这个“.”或 " Kg" 在任何情况下都使用。
有什么帮助吗?谢谢
我想你只缺少一个 "filter-parsed" class in the header (demo)
<th class="sorter-kilogramos filter-parsed">Kg</th>
在我的 tablesorter 中,我将此 addParser 应用于我在此问题中显示的列。它运行良好,但是当我以某种方式进行过滤时,我发现了一个意想不到的行为。
没有过滤的结果如下图:
addParser 的代码是下一个:
$.tablesorter.addParser({
// set a unique id
id: 'kilogramos',
is: function(s) {
// return false so this parser is not auto detected
return false;
},
format: function(s) {
// format your data for normalization
return parseFloat(s.replace(' Kg','').replace('.',''));
},
// set type, either numeric or text
type: 'numeric'
});
如果我使用“>=”,它似乎应用了 addParser,因为我可以去掉“.”。和“Kg”,它找到 11.689 Kg 结果。
但似乎如果我不使用“>”或“>=”等运算符,行为就会改变,它需要点来找到你想要得到的东西。在接下来的图片中我展示了我的意思。
我只是不想需要这个“.”或 " Kg" 在任何情况下都使用。
有什么帮助吗?谢谢
我想你只缺少一个 "filter-parsed" class in the header (demo)
<th class="sorter-kilogramos filter-parsed">Kg</th>