gpt4 book ai didi

jquery - 免费 jqGrid - "empty"和 "not empty"的自定义过滤规则

转载 作者:行者123 更新时间:2023-12-01 07:44:21 27 4
gpt4 key购买 nike

我熟悉可以添加到每个列过滤器左侧的下拉选项中的自定义操作。

我想要的是添加两种新类型的自定义运算符进行过滤:1. 空2.不为空

虽然我知道如何实现这一点,但我对 Free JqGrid 中此类流程的用户体验有疑问。这是因为这两个自定义运算符一旦被选择就不需要用户输入任何内容,因此用户在选择此具有空值的运算符后必须单击“输入” - 非常困惑。

我想知道的是如何实现以下考虑我已经定义了一个新的自定义运算符:

  1. 一旦我选择此运算符,交易就会开始,而无需等待用户输入任何内容或点击 Enter(类似于 onSelect)。
  2. (可选)一旦选择了特定运算符,就无法在该特定过滤器中键入任何内容。

谢谢

塔尔。

最佳答案

感谢您指出定义自定义一元操作的问题。我 promise the changes代码 free jqGrid允许在新选项 customUnaryOperations 中指定自定义一元运算。

The demo定义了两个自定义过滤操作:“em”(“为空”)和“nm”(“非空”),并使用“金额”和“注释”列中的操作。 “注释”列另外使用标准(预定义)“nu”(“为空”)和“nn”(“不为空”)操作。 “金额”列使用

searchoptions: {sopt: ["eq", "ne", "em", "nm"]}

“注释”列使用

searchoptions: {sopt: ["cn", "bw", "ew", "eq", "bn", "nc", "en", "nu", "nn", "em", "nm"]}

此外,演示还使用 customSortOperations 和新的 customUnaryOperations:

customUnaryOperations: ["em", "nm"],
customSortOperations: {
em: {
operand: "=''",
text: "is empty",
filter: function (options) {
var v = options.item[options.cmName];
if (v === undefined || v === "") {
return true;
}
}
},
nm: {
operand: "!=''",
text: "isn't empty",
filter: function (options) {
var v = options.item[options.cmName];
if (v !== undefined && v !== "") {
return true;
}
}
}
}

关于jquery - 免费 jqGrid - "empty"和 "not empty"的自定义过滤规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41441826/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com