gpt4 book ai didi

javascript - Kendo 网格过滤器需要特定的屏蔽功能

转载 作者:行者123 更新时间:2023-12-03 02:08:44 25 4
gpt4 key购买 nike

我目前正在向作为日期的剑道网格列添加日期掩码。不过,我遇到了两个问题。当我使用下面的代码全局添加蒙版时,它按预期工作。

 function runDateMaskingUtility() {
$("[data-role='datepicker']").each(function () {
var datepicker = $(this);
datepicker.kendoMaskedTextBox({
mask: "00/00/0000"
});

datepicker.kendoDatePicker({
format: "MM/dd/yyyy"
});

datepicker.closest(".k-datepicker")
.add(datepicker)
.removeClass("k-textbox");
});
}

现在,当我这样做时,它会正确地在列的过滤器标题中添加屏蔽。问题是我们的日期格式如下:

3/01/2018 or 11/01/2018

当用户使用过滤器时,它会在月份前面附加一个数字的零,在这种情况下,过滤器找不到与其匹配的字符串。当数据类似于 (3/01/2018) 时查找 (03/01/2018)。我考虑过检查我们所有的 Razor 网格定义,并将日期格式化为两位数的月份,无论如何,但希望不是更新几十页,而是有一种方法可以让掩码正确处理这个问题。

第二个问题是,即使列的过滤器标题被屏蔽,当您单击列顶部的下拉列表进行高级过滤时,它们也不包含日期输入的屏蔽。我很确定这是因为这些是动态的,所以当我运行屏蔽函数时,它不会触及这些过滤器输入。我怎样才能将屏蔽应用于这些过滤器?我尝试绑定(bind)到“过滤器”列表项的悬停事件,然后显示高级过滤器表单,但没有成功。提前致谢!

最佳答案

根据 kendoMaskedTextBox( https://docs.telerik.com/kendo-ui/api/javascript/ui/maskedtextbox/configuration/mask#mask ) 的文档,数字支持以下掩码规则:

  • 0 - 数字。接受 0 到 9 之间的任何数字。
  • 9 - 数字或空格。接受 0 到 9 之间的任何数字以及空格。
  • # - 数字或空格。与 9 规则类似,但也允许 (+) 和 (-) 符号。

鉴于您想要接受 0 和 0 之间的数字以及空格,您应该使用:

datepicker.kendoMaskedTextBox({
mask: "90/90/0000"
});

而不是:

datepicker.kendoMaskedTextBox({
mask: "00/00/0000"
});

我希望这能回答您的问题。

关于javascript - Kendo 网格过滤器需要特定的屏蔽功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49674766/

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