jquery - Tokenfield - 仅允许来自源的 token

标签 jquery bootstrap-tokenfield

我正在尝试使用 Tokenfield 插件 - http://sliptree.github.io/bootstrap-tokenfield

如何限制仅使用源 token ?

$('#tokenfield_platform').tokenfield({
autocomplete: {
source: [
        {% for platform_item in platforms %}
        '{{ platform_item }}',
    {% endfor %}
],
delay: 100
},
createTokensOnBlur:true,
showAutocompleteOnFocus: true
}).on('tokenfield:createtoken', function (event) {
    var existingTokens = $(this).tokenfield('getTokens');
    $.each(existingTokens, function(index, token) {
    if (token.value === event.attrs.value)
        event.preventDefault();
    });
    //var available_tokens = bloodhound_tokens.index.datums;
    // I do not want to use Twitter Typeahead, but only tokens from source
    var exists = true;
    $.each([available_tokens, function(index, token) {
    if (token.value === event.attrs.value)
        exists = false;
    });
    if(exists === true)
    event.preventDefault();
});

感谢您提供任何信息。

最佳答案

使用监听器tokenfield:createtoken,您可以在创建 token 之前对其进行验证。

信息:http://sliptree.github.io/bootstrap-tokenfield/#events

$('#tokenfield_platform').on('tokenfield:createtoken', function (event) {
    var exists = false;
    $.each(yourSource, function(index, value) {
            if (event.attrs.value === value) {
                exists = true;
            }
    });
    if(!exists) {
            event.preventDefault(); //prevents creation of token
    }
});

关于jquery - Tokenfield - 仅允许来自源的 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35610205/

相关文章:

javascript - Jquery Tumblr Each() 解决方案?

javascript - 如何在 div 内容 slider jquery 上设置自动播放

javascript - 如何获取触发 easyautocomplete 的元素

php - 在第一个输入值之后填充另一个输入字段值

json - 使用 typeahead 和 JSON Bootstrap token 字段

javascript - 统计表格行中空输入框的个数

javascript - Bootstrap 3 中的 Tokenfield(标记输入)自动完成功能不起作用

javascript - 专注于 bootstrap-tokenfield 输入

javascript - 禁用输入打字