关于免费jqGrid 4.15.4中的自定义过滤器,我有一个问题。我想实现一种搜索功能,如果我选择“小于但不为空或为空”过滤器,则该过滤器应仅显示记录行,该列不为空或为空。我能够创建自定义过滤器,该过滤器从this thread给出'is null'或'is n't null'。 但是,当我尝试为矿山需求创建时,我无法弄清楚我必须使用什么运算符来“小于但不能为null或为空”。
例如,我已使用以下代码示例创建自定义过滤器:
customUnaryOperations: ["lne"],
customSortOperations: {
lne: {
operand: "<!=''",
text: "less but not empty",
filter: function (options) {
var v = options.item[options.cmName];
if (v !== undefined && v !== "") {
return true;
}
}
}
我在搜索选项工具栏中使用的上述运算符。
searchoptions: {
searchOperators: true,
sopt: ['eq', 'lt', 'gt','lne'],
}, search: true,
同时,我不想使用 formatter:“ integer” (建议here),因为这只会将0分配给所有空记录列单元格,并且无论何时只要在记录中仍然可见选择“小于” 过滤器。
作为参考,我创建了一个fiddle,其中包括需求和两个图像,以更加清晰。那么,有人可以帮我这个忙吗?我希望我再次提出这个要求。
谢谢。
答案 0 :(得分:1)
过滤器的代码可能如下所示
customSortOperations: {
lne: {
operand: "<!=''",
text: "less but not empty",
filter: function (options) {
var v = options.item[options.cmName];
if (v !== undefined && v !== "" &&
parseFloat(v) < parseFloat(options.searchValue)) {
return true;
}
}
}
}