dijit.form.FilteringSelect接近我所需要的。我尝试了很多方法来做自己想做的事,但是作为一名初学者,我永远不知道自己是否朝着正确的方向前进。

当我开始输入FilteringSelect时,我只会看到以我输入的内容开头的选项。就像对value + "*"的查询
我需要的是查看在任何地方键入的内容的任何选项。就像对"*" + value + "*"的查询

因此,如果存在“Apple”,“Banana”和“Orange”,并且键入“e”,则应该看到“Apple”和“Orange”。如果可能,请强调搜索字符串:“Appl e ”,“Orang e

我认为我需要一些灵巧的数据存储,但是无论走到哪里,我看起来都是死路一条。我是否缺少某些东西,还是应该以完全不同的方式进行?

最佳答案

您要使用queryExpr属性:

var f = new dijit.form.FilteringSelect({
 ...
 queryExpr: "*${0}*",
 ...
}, node);

注意$ {0}之前和之后的*。

关于dojo - 带子串搜索的dijit.form.FilteringSelect,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2094232/

10-11 19:50