dojo – dijit过滤选择最小长度

我似乎无法找到一种方法来要求过滤选择输入具有一定的长度.我试过这样的:

new dijit.form.FilteringSelect({
    'name': 'bla','store': jsonRestStore,'searchAttr': "name",'pattern': '.{3,}','regExp': '.{3,}'
});

但它并没有改变一件事.我希望过滤选择仅查询商店,如果已输入至少3个字符.不能那种异国情调的要求,可以吗?该商店后面有数以千计的商品,所以只用1或2个字符查询就很慢了.

解决方法

我做了一些搜索,在dojo邮件列表上找到了 this post.总而言之,FilteringSelect无法为其提供本机支持,但它实现起来非常简单.

// custom min input character count to trigger search
minKeyCount: 3,// override search method,count the input length
_startSearch: function (/*String*/key) {
    if (!key || key.length < this.minKeyCount) {
    this.closeDropDown();
    return;
    }
    this.inherited(arguments);
}

同样在API Docs中,有一个searchDelay属性,可以帮助您最大限度地减少查询次数.

searchDelay 
Delay in milliseconds between when user types something and we start searching based on that value

相关文章

我有一个网格,可以根据更大的树结构编辑小块数据.为了更容易...
我即将开始开发一款教育性的视频游戏.我已经决定以一种我可以...
我正在使用带有Grails2.3.9的Dojo1.9.DojoNumberTextBox小部...
1.引言鉴于个人需求的转变,本系列将记录自学arcgisapiforja...
我正在阅读使用dojo’sdeclare进行类创建的语法.描述令人困惑...
我的团队由更多的java人员和JavaScript经验丰富组成.我知道这...