如何限制选择标记中的最小字符

时间:2015-07-01 07:28:40

标签: jquery selectize.js

我想限制Selectize标签输入的最少3个字符。可能吗?选择中是否有任何事件?

4 个答案:

答案 0 :(得分:6)

我遇到了同样的问题。 正如Rory通过插件所提到的那样。

实际上很简单。

标记最小字长过滤的官方示例,您可以找到here

$('#select-words-length').selectize({
    create: true,
    createFilter: function(input) { return input.length >= MIN_LENGTH; }
});

您可以做的另一件事是过滤搜索本身

//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;
        }
    };
},

希望有所帮助:)

答案 1 :(得分:1)

the docs中有一个有效的示例。请参见“远程源-烂番茄”示例。我适应了这样的东西:

load: function(query, callback) {
    if (!query || query.length < 3) return callback();  // <- this line
    $.ajax({ 
        // ajax options...

答案 2 :(得分:0)

这是一个对我有用的肮脏解决方法,希望对您有用。

var checkLength = function() {
    if (selectize.$control_input.val().length < 3) selectize.close()
};

selectize.on('dropdown_open', checkLength)

答案 3 :(得分:-7)

  1. 下载selectize.js插件

  2. 包括jquery和

  3. 使用此代码,它会起作用。

    $(&#39;#您-ID&#39)。selectize({     maxItems:3 });