我正在使用树表,并实现了一个自定义数据过滤器。我只想在数据层次结构的第一级进行一些操作。你知道我怎么能做到吗?
我会告诉你一些上下文。在下面的 gif 中,当我单击打开内部数据级别时,总和(或平均值)会发生变化。高层有一次计算出这个信息是错误的。
我只需要设置一个条件,它是第一级的制作。
这是我当前的代码。
<script>
webix.ui.datafilter.reports = {
refresh: function(master, node, column){
trackCells:false,
refresh: function(master, node, column){
var result = 0;
var tipoDeDados = null;
master.mapCells(null, column.columnId, null, 1, function(value){
if (tipoDeDados === null) {
tipoDeDados = defineTipoDeDados(value);
}
valorLimpo = removeCaracteresInvalidos(value);
result += valorLimpo; // here I think that I need the condition
return value;
});
if (tipoDeDados === "porcentagem") {
node.firstChild.innerHTML = (result/master.count()).toFixed(2).replace('.', ',') + '%';
} else if (tipoDeDados === "moeda") {
node.firstChild.innerHTML = 'R$ ' + (result).toFixed(2).replace('.', ',');
} else if (tipoDeDados === "numerico") {
node.firstChild.innerHTML = result;
} else {
node.firstChild.innerHTML = "";
}
},
render: function(a, b){}
};
</script>
Webix Docs 说我只需要将 trackCells 设置为 false 以避免重新加载数据过滤器,但是当我通过 ajax 加载获取新数据时它不起作用。