How should Select2 be initialized?

Can default options be set for all dropdowns?

In some cases, you need to set the default options for all instances of Select2 in your web application. This is especially useful when you are migrating from past versions of Select2, or you are using non-standard options like custom AMD builds. Select2 exposes the default options through $.fn.select2.defaults, which allows you to set them globally.

When setting options globally, any past defaults that have been set will be overriden. Default options are only used when an option is requested that has not been set during initialization.

You can set default options by calling $.fn.select2.defaults.set("key", "value").

$.fn.select2.defaults.set("theme", "classic");

How can I set a default value for a nested option?

The key that is set should take the same format as keys set using HTML data-* attributes which means that two dashes (--) will be replaced by a level of nesting, and a single dash (-) will convert it to a camelCase string.

How can I reset all of the global default options?

You can reset the default options by calling

$.fn.select2.defaults.reset();