我正在尝试使用 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/