Tokenfield
JSON
formatted array of objects where each object contains token
ID
and token Name
.Tokenfield could be applied to any visible
<input>
element that allows users to input text or number.
Without additional options, this Tokenfield would allow users to add
multiple token items without any specific restrictions.
Token input field is adapted for input groups. It shares global
input styling with .form-control
elements for consistency and
can be used with different elements: inputs, selects, text addons, button
addons, icons etc.
You can either use a regular input field placeholder or set it
in tokenfield configuration. If placeholder
option is set to
null (default), tokenfield will try to use placeholder attribute from the
original element set in el
.
By default, token field allows user to add custom tokens instead
of using preset list of tokens or tokens retrieved from the server. To
disable this behaviour and limit selection to the tokens from the list. set
newItems
option to false
.
Tokenfield allows user to select or add multiple number of
tokens, in fact there is no limit. In some cases you can disable multiple
tokens in the field and allow only 1. To do that, set multiple
optino to false
.
You can also limit the number of selected tokens in the input
field. Use maxItems: [number]
to add a limit. The default value
is 0
, which allows user to enter as many items as possible.
Here you can't enter more than 2 tokens.
Tokenfield can be configured to do matching only from the
beginning of the string - it compiles match regex to
basicall this format: /^{value}/i
. To use this feature, set
matchStart
option to true
.
Tokenfield can be configured to do matching only from the
end of the string - it compiles match regex to basicall
this format: /{value}$/i
. To use this feature, set
matchEnd
option to true
.
If addItemOnBlur
option is set to
true
, new item will be added to the tokenfield on input blur.
Either sets new item or first match from suggested list. To test it, type
something and click outside the field.
You can specify certain characters/sets of characters to be used
as delimiters during tokenization or input events on tokenfield. Use
delimiters
option with an array of delimiters. In this example
new token is added every time you press , key.
If addItemsOnPaste
config option is set to
true
, new items will be added to the tokenfield on paste.
Tokenization happens using delimiters options listed above. Try to copy and
paste some text to see it in action.
By default, user needs to type at least 2 characters to see the
list of matches. This number can be controlled with minChars
option. This example allows you to enter 1 character to see the list of all
matches. Type "A" to see it in action.
Tokenfield also works with remote data source stored in JSON
file. Options are set as properties of an object assigned to remote property
of the parent options object. In this example all tokens are loaded from
car_brands.json
file.
Tokenfield has several overridable methods which allow user to remap given token data or change how some elements are rendered. In this example Tokenfield fetches remote data for autocomplete and renders labels in capital letters