Jquery 如何限制selectize标记中的最小字符数
我想限制Selectize标签输入至少3个字符。可能吗?selectize中是否有任何事件Jquery 如何限制selectize标记中的最小字符数,jquery,selectize.js,Jquery,Selectize.js,我想限制Selectize标签输入至少3个字符。可能吗?selectize中是否有任何事件 下载selectize.js插件 包括jquery和 使用此代码,它将工作 $(“#您的id”)。选择({ 最大项目:3 }); 我也有同样的问题。 正如Rory提到的,通过插件 其实很简单 标签最小字长过滤的官方示例 您可以做的另一件事是过滤搜索本身 //restricts the matches to fulfill MIN_SEARCH_LENGTH via the 'score' callback
//restricts the matches to fulfill MIN_SEARCH_LENGTH via the 'score' callback
//see https://github.com/brianreavis/selectize.js/blob/master/docs/usage.md#callbacks
score: function scoreFilter(search) {
var ignore = search && search.length < MIN_SEARCH_LENGTH;
var score = this.getScoreFunction(search);
//the "search" argument is a Search object (see https://github.com/brianreavis/selectize.js/blob/master/docs/usage.md#search).
return function onScore(item) {
if (ignore) {
//If 0, the option is declared not a match.
return 0;
} else {
var result = score(item);
return result;
}
};
},
//通过“score”回调限制匹配以满足最小搜索长度
//看https://github.com/brianreavis/selectize.js/blob/master/docs/usage.md#callbacks
分数:函数scoreFilter(搜索){
var ignore=search&&search.length
希望有帮助:)这里有一个肮脏的变通方法,对我来说很有效,希望它能有所帮助
var checkLength = function() {
if (selectize.$control_input.val().length < 3) selectize.close()
};
selectize.on('dropdown_open', checkLength)
var checkLength=function(){
如果(selectize.$control\u input.val().length<3)selectize.close()
};
选择.on('dropdown\u open',checkLength)
中有一个工作示例。请参阅“远程源代码-烂番茄”示例。我适应了这样的环境:
load: function(query, callback) {
if (!query || query.length < 3) return callback(); // <- this line
$.ajax({
// ajax options...
load:函数(查询、回调){
如果(!query | | query.length<3)返回回调();//似乎没有任何设置允许您修改此行为。但是,Rory有其他方法吗?一切都有可能。您可能需要创建自己的来实现它。字符,而不是项没有直接选择API。顺便问一下,为什么命名匿名函数?匿名函数没有名称。的onScore函数有一个名称(因此它不是匿名的)这有助于理解正在执行的操作。也许名称可能更准确,但当您进行调试时,您会在堆栈跟踪中看到名称,这比查看这么多匿名函数要好。哦……好吧……我从来没有这样做过,并且认为它不是很有用,对象键已经给出了足够的提示。这个解决方案可行吗it’很好,我也实施了。
load: function(query, callback) {
if (!query || query.length < 3) return callback(); // <- this line
$.ajax({
// ajax options...