Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
JavaScript CSS HTML
Failed to load latest commit information.
LICENSE strip down license header Update
component.json fix dependency switch release to uglifyjs instead of closure
select2-spinner.gif Rename spinner.gif to select2-spinner.gif to prevent collisions with …
select2.css release 3.3.2
select2.jquery.json modified version identifiers in descriptors for release 3.3.2
select2.js release 3.3.2
select2.min.js release 3.3.2
select2.png Retina-ize icons
select2_locale_de.js add German translation
select2_locale_en.js.template Suggesting author header in translation files
select2_locale_es.js added spanish translation. fixes #883
select2_locale_eu.js Added Basque translation.
select2_locale_fr.js fix typos in the French translation
select2_locale_hr.js Add Croatian translation
select2_locale_hu.js added Hungarian translation
select2_locale_it.js add [it] locale transations
select2_locale_nl.js Dutch language support
select2_locale_pt-BR.js Add Brazilian Portuguese translation
select2_locale_pt-PT.js Fixed artifacts in pt-PT translation
select2_locale_ro.js Added Romanian translation
select2_locale_ru.js Create select2_locale_ru.js
select2_locale_sk.js Create Slovak localisation file
select2_locale_sv.js Swedish translation
select2_locale_tr.js turkish translation added
select2_locale_ua.js Create Ukrainian translation file
select2_locale_zh-CN.js Chinese Locale Added
select2x2.png Retina-ize icons


Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.

To get started checkout examples and documentation at

What Usecases Does Select2 Support

  • Enhances native selects with search
  • Enhances native selects with a better multi-select interface
  • Loading data from javascript: easily load items via ajax and have them searchable
  • Nested optgroups: native selects only support one level of nested, Select2 does not have this restriction
  • Tagging: ability to add new items on the fly
  • Working with large remote datesets: ability to partially load a dataset based on the search term
  • Paging of large datasets: easy support for loading more pages when the results are scrolled to the end
  • Templating: support for custom rendering of results and selections

Browser Compatibility

  • IE 8+ (7 mostly works except for issue with z-index)
  • Chrome 8+
  • Firefox 3.5+
  • Safari 3+
  • Opera 10.6+


Internationalization (i18n)

Select2 supports multiple languages by simply including the right language JS file (select2_locale_it.js, select2_locale_nl.js etc.).

Missing a language? Just copy select2_locale_en.js.template, translate it and make a pull request back to Select2 here on Github.

Bug tracker

Have a bug? Please create an issue here on GitHub!

Mailing list

Have a question? Ask on our mailing list!

Copyright and License

Copyright 2012 Igor Vaynberg

This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU General Public License version 2 (the "GPL License"). You may choose either license to govern your use of this software only upon the condition that you accept all of the terms of either the Apache License or the GPL License.

You may obtain a copy of the Apache License and the GPL License in the LICENSE file, or at:

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

Something went wrong with that request. Please try again.