selectize.js README

The project's README from github.com/selectize/selectize.js. As one markdown file: README.md.

selectize.js

Selectize.js

→ Selectize is looking for new members on the maintenance team!

NPM version CDNJS version
Node.js CI
Discussion & Help

Selectize is an extensible jQuery-based custom <select>; UI control. It's useful for tagging, contact lists, country selectors, and so on. The goal is to provide a solid & usable experience with a clean and powerful API.

Features

Dependencies

Optional:

Installation

Selectize can be installed via NPM npm install @selectize/selectize

Installing Manually

All pre-built files needed to use Selectize can be found in the "dist" folder.

If you're looking to get started with minimal fuss, include selectize.min.js (bundles Sifter and Microplugin dependencies – also available un-minified for debugging, just remove the .min part) and css/selectize.default.css.

Selectize is available at cdnjs.

Usage

$("select").selectize(options);

The available options are documented here.

Contributing

When issuing a pull request:

Add an entry to the top of the CHANGELOG, and update the documentation in docs/ as needed. (Refactors and documentation changes don't need a changelog entry.)

Squash your commits together in one or a few complete, logical commits, with a concise and descriptive message. One commit means one feature/bugfix/thing that has changed, or a diff bringing the code one step forward to a better, working state.

Once your commit is nice and clean, and you want to discard the other changes, you can use git checkout . (that will erase changes to tracked files) and git clean [-i/--interactive] (to erase untracked files). However, be careful with those commands, as their function is to erase things/changes.

However, be careful not to add the dist/ files in your commit, as Grunt automatically regenerates the files in dist/ as the source is changed.

Tests

Please ensure all the tests pass:

npm test # defaults to ChromHeadless
BROWSERS=Firefox npm test
BROWSERS=Firefox,Chrome npm test
BROWSERS=Firefox,Chrome,Safari npm test

Local environment

To run Selectize locally:

npm start

You can then run the examples at https://loopback.website:4000/.

License

Copyright © 2013–2016 Brian Reavis & Contributors
Copyright © 2020-2022 Selectize Team & Contributors

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

selectize.js (selectize/selectize.js)

Searching Database…

13K ·GitHub
archived
What is this?Selectize is a jQuery-based UI control that turns a plain textbox or select box into a hybrid of both, with autocomplete and native-feeling keyboard navigation. Typical uses: tagging, contact lists, country selectors.
Is it a framework or just a jQuery plugin?A jQuery plugin: you attach it to an input or select element to upgrade it. It ships as the npm package @selectize/selectize with prebuilt JS and CSS files, and extra features come through a plugin API built on microplugin.
How do I add it to my project?Run npm install @selectize/selectize, or go manual: include selectize.min.js and css/selectize.default.css from the dist folder — the same prebuilt files are also on cdnjs.
Do I need jQuery, and which version?Yes — jQuery 1.7 or greater as a peer dependency. On npm 3+ you install it yourself (e.g. npm install --save [email protected]); jquery-ui is optional and only needed by the drag-drop plugin.
Is the project still maintained?Not actively: the GitHub repo is archived, and the README says Selectize is looking for new members on the maintenance team — treat it as stable but slowly-moving rather than in active development.
What can it do that a plain select box can't?Options are searched and ranked on the fly via Sifter (titles and descriptions both), the caret moves between selected items with the arrow keys, you can select and delete several items at once with option/ctrl, diacritics are handled out of the box, and touch input works on iOS 5+.
Can options be loaded from the server as the user types?Yes — remote data loading is made for exactly that case: when you have thousands of options, the server provides them as the user types.
Can users add their own items, like new tags?Yes — item creation lets users add entries on the fly, with async saving supported: the control stays locked until your save callback fires.
Will it match the look of my Bootstrap site?Yes — there are prebuilt themes for Bootstrap 2, 3, 4 and 5, plus SCSS and Less source files if you want to customize the styles yourself.
Creator
selectize
Size
27.3 MB
Stars
13K
Age
14y
Commits · 90 Days