使用easyUI datagrid的filter时,当value是空时候如何过滤
例如
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2LcZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DMxkDOwcTN2EDMyQDM2EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
现在你想筛选,可是为空的一直都在,咋整捏?
解决很简单,在引入的datagrid-filter.js中修改如下:
找到function isMatch(row){}方法
修改为
function isMatch(row){
// console.log(row)
var rules = opts.filterRules;
for(var i=0; i<rules.length; i++){
var rule = rules[i];
var source = row[rule.field];
if (source){
var op = opts.operators[rule.op];
if (!op.isMatch(source, rule.value)){return false}
}else{
return false;//加一个判断,如果为空直接返回false,也许你有更多判断,大家自己尝试吧
}
}
return true;
}
谢谢.