Select2 pattern.

Show a widget which enhances dropdown selections with automatic suggestions, search, and tagging functionality.

Configuration

Option Type Default Description
separator string ',' Analagous to the separator constructor parameter from Select2. Defines a custom separator used to distinguish the tag values. Ex: a value of ";" will allow tags and initialValues to have values separated by ";" instead of the default ",".
initialValues string null This can be a json encoded string, or a list of id:text values. Ex: Red:The Color Red,Orange:The Color Orange This is used inside the initSelection method, if AJAX options are NOT set.
vocabularyUrl string null This is a URL to a JSON-formatted file used to populate the list.
allowNewItems string true All new items to be entered into the widget.
onSelecting string or function null Name of global function or function to call when value is selecting.
onSelected string or function null ame of global function or function to call when value has been selected.
onDeselecting string or function null Name of global function or function to call when value is deselecting.
onDeselected string or function null Name of global function or function to call when value has been deselected.

For more options on select2 go to http://ivaynberg.github.io/select2/#documentation

Examples

Autocomplete with search (single select)

<select class="pat-select2" data-pat-select2="width:20em;">
<option value="Acholi">Acholi</option>
<option value="Afrikaans">Afrikaans</option>
<option value="Akan">Akan</option>
<option value="Albanian">Albanian</option>
<option value="Amharic">Amharic</option>
<option value="Arabic">Arabic</option>
<option value="Ashante">Ashante</option>
<option value="Asl">Asl</option>
<option value="Assyrian">Assyrian</option>
<option value="Azerbaijani">Azerbaijani</option>
<option value="Azeri">Azeri</option>
</select>

Tagging

<input
class="pat-select2"
type="text"
data-pat-select2="separator:,;
tags:Red,Yellow,Green,Orange,Purple;
width:20em;
initialValues:Red:The Color Red,Orange:The Color Orange"

value="Red,Orange"
/>

Orderable tags

<input
class="pat-select2"
type="text"
data-pat-select2="orderable:true;
tags:Red,Yellow,Green;
width:20em"

/>

AJAX tags

<input
class="pat-select2"
type="hidden"
data-pat-select2="placeholder:Search for a Value;
vocabularyUrl:select2-test.json;
width:20em"

/>