我的专栏基本上是
<td><a href="somewhere">399.99</a>
如果我parser:"number"
在列上设置,我会得到一个空白列,但如果我不这样做,则排序不是数字排序。
有没有更好的解析器可以处理数字周围的链接?
我的专栏基本上是
<td><a href="somewhere">399.99</a>
如果我parser:"number"
在列上设置,我会得到一个空白列,但如果我不这样做,则排序不是数字排序。
有没有更好的解析器可以处理数字周围的链接?
7 次观看,当我找到答案时,对我来说是一个新的最低记录。
我必须定义自己的排序函数(使用未定义的第三个参数http://yuilibrary.com/projects/yui2/ticket/2528649)。
function sortNumbersWithLinks(a, b, desc, field) {
a = a.getData(field).replace(/<[^>]+>/, '');
b = b.getData(field).replace(/<[^>]+>/, '');
a = parseFloat(a);
b = parseFloat(b);
return YAHOO.util.Sort.compare(a, b, desc);
}
var myColumnDefs = [
{key:"Name", sortable:true},
{key:"Performance", sortable:true, sortOptions:{sortFunction:sortNumbersWithLinks}},
{key:"Price", sortable:true, sortOptions:{sortFunction:sortNumbersWithLinks}},
{key:"Performance / Price", sortable:true, parser:"number"},
];
您必须为该字段定义一个自定义解析器以从标签汤中提取数字。
就像是
{
key: 'num_in_there_somewhere',
parser: function (html) {
return +html.replace(/<.*?>|\s/g, '');
}
}