Plugin Examples

Plugins are bundled in tom-select.complete.js but can also be loaded individually. To load individually, include tom-select.base.js and any combination of plugins of your choosing. The plugin documentation has more information about custom bundles and plugin development.

Control Input

Plugins that modify the behavior and/or display of the control input.

Positions the control input in the select dropdown.
More info...

Input Autogrow

Increase the width of the input as users type.
More info...

Caret Position

Order matters sometimes. Use the and arrow keys to move the caret between items.
More info...


Plugins that modify the behavior and/or display of items (selected options).

Remove Button

Adds one-click removal of each item.
More info...

No Backspace Delete

Prevents the user from removing items with backspace and delete keys unless items are active. Use with no_active_items to disable deleting with keyboard events entirely.
More info...

Drag Drop

Allows users to sort items with drag-n-drop.
More info...

Restore on Backspace

Fills the control input with the value of deleted items upon deletion.
More info...

Clear Button

Adds a small button to the right side of the control that, when clicked, removes all of the items (selected options).
More info...

No Active Items

Disables selecting items.
More info...

Plugins that modify the behavior and/or display of the dropdown content.

Checkbox Options

Displays checkboxes next to each option in the dropdown.
More info...

Optgroup Columns

Divides option groups into columns and allows users to navigate columns with left and right keys.
More info...
Adds a customizable header to the select dropdown.
More info...

Virtual Scroll

Loads remote data as users scroll through dropdown
More info...


Change Listener

Updates the value of the Tom Select instance when the value of the underlying <input> element changes.
More info...