"use strict"; $(document).ready(function(){ // Single Search Select $(".js-example-basic-single").select2(); $(".js-example-disabled-results").select2(); // Multi Select $(".js-example-basic-multiple").select2(); // With Placeholder $(".js-example-placeholder-multiple").select2({ placeholder: "Select Your Name" }); //Limited Numbers $(".js-example-basic-multiple-limit").select2({ maximumSelectionLength: 2 }); // Tagging Suppoort $(".js-example-tags").select2({ tags: true }); // Automatic tokenization $(".js-example-tokenizer").select2({ tags: true, tokenSeparators: [',', ' '] }); // Loading Array Data var data = [{ id: 0, text: 'enhancement' }, { id: 1, text: 'bug' }, { id: 2, text: 'duplicate' }, { id: 3, text: 'invalid' }, { id: 4, text: 'wontfix' }]; $(".js-example-data-array").select2({ data: data }); //RTL Suppoort $(".js-example-rtl").select2({ dir: "rtl" }); // Diacritics support $(".js-example-diacritics").select2(); // Responsive width Search Select $(".js-example-responsive").select2(); $(".js-example-basic-hide-search").select2({ minimumResultsForSearch: Infinity }); $(".js-example-disabled").select2({ disabled: true }); $(".js-programmatic-enable").on("click", function() { $(".js-example-disabled").prop("disabled", false); }); $(".js-programmatic-disable").on("click", function() { $(".js-example-disabled").prop("disabled", true); }); $(".js-example-theme-single").select2({ theme: "classic" }); function formatRepo(repo) { if (repo.loading) return repo.text; var markup = "
" + "
" + "
" + "
" + repo.full_name + "
"; if (repo.description) { markup += "
" + repo.description + "
"; } markup += "
" + "
" + repo.forks_count + " Forks
" + "
" + repo.stargazers_count + " Stars
" + "
" + repo.watchers_count + " Watchers
" + "
" + "
"; return markup; } function formatRepoSelection(repo) { return repo.full_name || repo.text; } $(".js-data-example-ajax").select2({ ajax: { url: "https://api.github.com/search/repositories", dataType: 'json', delay: 250, data: function(params) { return { q: params.term, // search term page: params.page }; }, processResults: function(data, params) { // parse the results into the format expected by Select2 // since we are using custom formatting functions we do not need to // alter the remote JSON data, except to indicate that infinite // scrolling can be used params.page = params.page || 1; return { results: data.items, pagination: { more: (params.page * 30) < data.total_count } }; }, cache: true }, escapeMarkup: function(markup) { return markup; }, // let our custom formatter work minimumInputLength: 1, templateResult: formatRepo, // omitted for brevity, see the source of this page templateSelection: formatRepoSelection // omitted for brevity, see the source of this page }); // Multi-select js start $('#my-select').multiSelect(); $('#public-methods').multiSelect(); $('#select-all').on('click',function() { $('#public-methods').multiSelect('select_all'); return false; }); $('#deselect-all').on('click',function() { $('#public-methods').multiSelect('deselect_all'); return false; }); $('#select-5').on('click',function() { $('#public-methods').multiSelect('select', ['elem_1', 'elem_3', 'elem_4', 'elem_5']); return false; }); $('#deselect-5').on('click',function() { $('#public-methods').multiSelect('deselect', ['elem_1', 'elem_3', 'elem_4', 'elem_5']); return false; }); $('#refresh').on('click', function() { $('#public-methods').multiSelect('refresh'); return false; }); $('#add-option').on('click', function() { $('#public-methods').multiSelect('addOption', { value: 42, text: 'test 42', index: 0 }); return false; }); $('#optgroup').multiSelect({ selectableOptgroup: true }); $('#custom-headers1').multiSelect({ selectableHeader: "
Selectable items
", selectionHeader: "
Selection items
", selectableFooter: "
Selectable footer
", selectionFooter: "
Selection footer
" }); // Single Select // $('#example-single').multiselect(); // // Multi Select // $('#example-multiple-selected').multiselect(); // // Multi Group Select // $('#example-multiple-optgroups').multiselect(); // // Select all group select // $('#example-enableClickableOptGroups').multiselect({ // enableClickableOptGroups: true // }); // // Disable Options Select // $('#example-enableClickableOptGroups-init').multiselect({ // enableClickableOptGroups: true // }); // // Collapse group select // $('#example-enableCollapsibleOptGroups').multiselect({ // enableCollapsibleOptGroups: true // }); $('.searchable').multiSelect({ selectableHeader: "", selectionHeader: "", afterInit: function(ms) { var that = this, $selectableSearch = that.$selectableUl.prev(), $selectionSearch = that.$selectionUl.prev(), selectableSearchString = '#' + that.$container.attr('id') + ' .ms-elem-selectable:not(.ms-selected)', selectionSearchString = '#' + that.$container.attr('id') + ' .ms-elem-selection.ms-selected'; that.qs1 = $selectableSearch.quicksearch(selectableSearchString) .on('keydown', function(e) { if (e.which === 40) { that.$selectableUl.focus(); return false; } }); that.qs2 = $selectionSearch.quicksearch(selectionSearchString) .on('keydown', function(e) { if (e.which == 40) { that.$selectionUl.focus(); return false; } }); }, afterSelect: function() { this.qs1.cache(); this.qs2.cache(); }, afterDeselect: function() { this.qs1.cache(); this.qs2.cache(); } }); // Multi-select js end });