Kendo ui 如何在剑道自动完成中使用通配符查找项目
我将剑道与JQuery一起使用,我需要创建一个带有通配符的搜索 例:苹果%红色Kendo ui 如何在剑道自动完成中使用通配符查找项目,kendo-ui,kendo-autocomplete,Kendo Ui,Kendo Autocomplete,我将剑道与JQuery一起使用,我需要创建一个带有通配符的搜索 例:苹果%红色 我如何才能做到这一点?尽管我在的文档中找不到对它的任何引用,并且它说需要是字符串,但您可以将它定义为一个函数,它接收两个参数,即要比较的项和输入字段的值 现在的问题是,如果您使用%作为通配符,我认为您应该使用服务器端过滤,但如果您要求使用JavaScript或jQuery实现,我认为您要求的是浏览器实现 如果用户可以使用JavaScript正则表达式语法输入通配符,则只需执行以下操作: $("#autocomplet
我如何才能做到这一点?尽管我在的文档中找不到对它的任何引用,并且它说需要是
字符串
,但您可以将它定义为一个函数
,它接收两个参数,即要比较的项和输入字段的值
现在的问题是,如果您使用%
作为通配符,我认为您应该使用服务器端过滤,但如果您要求使用JavaScript或jQuery实现,我认为您要求的是浏览器实现
如果用户可以使用JavaScript正则表达式语法输入通配符,则只需执行以下操作:
$("#autocomplete").kendoAutoComplete({
filter: function(input, pattern) {
var re = new RegExp(pattern, 'i');
return re.test(input);
},
dataSource: {
data: ["one", "two", "three"]
}
});
但是如果您想让它们使用%
作为任何字符的通配符,您可以在内部将if替换为*
,并执行以下操作:
$("#autocomplete").kendoAutoComplete({
filter: function(input, pattern) {
pattern = pattern.replace('%', '.*');
var re = new RegExp(pattern, 'i';
return re.test(input);;
},
dataSource: {
data: ["One", "Two", "Three"]
}
});
注意:需要注意的是,默认情况下自动完成不区分大小写,但您可以使用
下面是一段代码片段。尝试输入t
和t%e
var ignoreCase=true;
$(“#自动完成”).kendoAutoComplete({
ignoreCase:ignoreCase,
过滤器:功能(输入、模式){
pattern=pattern.replace('%','.*');
var re=新的RegExp(模式,ignoreCase?'i':'');
返回重新测试(输入);
},
数据源:{
数据:[“一”、“二”、“三”]
}
});代码>
您需要提供更多详细信息,说明谁将在浏览器或后端服务中运行搜索。您使用的是哪种剑道UI for…
或Telerik UI for…
产品?太好了!谢谢但是只需要一次就可以了。。T%e%e不工作如果可以使用多个%
则应使用模式。替换(/%/g,'.*')代码>而不是模式。替换('%','.'')代码>超级,你是最棒的!!