Javascript 选择2忽略某些输入?
因此,我使用基于select2jquery的选择框替换 我从一个通过ajax进行远程数据搜索的例子中找到了帮助,这个例子非常有用。我的最小输入值为3,因此用户必须在搜索开始前输入至少3个字符,否则a将返回90%的可搜索值 不幸的是,我的大部分可搜索值也是从开始的。因此,如果用户键入,将返回50%的结果,用基本上未过滤的结果填充一个巨大的下拉列表。。。不理想 有没有办法让Select2忽略某些固定短语,即键入“不应计数”以达到最少3个字符的计数Javascript 选择2忽略某些输入?,javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,因此,我使用基于select2jquery的选择框替换 我从一个通过ajax进行远程数据搜索的例子中找到了帮助,这个例子非常有用。我的最小输入值为3,因此用户必须在搜索开始前输入至少3个字符,否则a将返回90%的可搜索值 不幸的是,我的大部分可搜索值也是从开始的。因此,如果用户键入,将返回50%的结果,用基本上未过滤的结果填充一个巨大的下拉列表。。。不理想 有没有办法让Select2忽略某些固定短语,即键入“不应计数”以达到最少3个字符的计数 $('#searchInput').select2(
$('#searchInput').select2({
minimumInputLength: 3,
placeholder: 'Please search here ...',
ajax: {
url: "/api/v1/institutes",
dataType: 'json',
quietMillis: 100,
data: function(term, page) {
return {
query: term
};
},
results: function(data, page ) {
return { results: data }
}
},
formatResult: function(institute) {
return "<div class='select2-user-result'>" + institute.name + "</div>";
},
formatSelection: function(institute) {
return institute.name;
},
initSelection : function (element, callback) {
var elementText = $(element).attr('data-init-text');
callback({"term":elementText});
}
});
您可以检查,在这里您可以自定义以匹配您的模式 不确定select2是否有用于此目的的API,但解决此问题的另一种方法是修改API服务器进程(如果可能),使其不搜索或,并且只在他们键入4/5字母后返回结果。同时,对于只键入“the”或您识别的任何其他单词的人,您可以返回“过于宽泛的搜索词”。查看文档:看起来您可以将ajax:替换为query:用于您自己的自定义函数,其中您必须自己编写ajax,但这意味着您可以添加任何自定义检查。您的/api/v1/institutes外观如何喜欢难道你不能在查询进入你的表之前创建一个过滤器来忽略其中的查询吗?哦,哇,我刚刚意识到这是2014年的lol