| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- /*
- * bootstrap-select.js
- */
- (function($) {
- 'use strict'; // jshint ;_;
- $.fn.dropSelect = function(option) {
- return this.each(function() {
- var $this = $(this);
- var display = $this.find('.dropdown-display'); // display span
- var field = $this.find('input.dropdown-field'); // hidden input
- var options = $this.find('ul.dropdown-menu > li > a');// select options
- // when the hidden field is updated, update dropdown-toggle
- var onFieldChange = function(event) {
- var val = $(this).val();
- var displayText = options.filter("[data-value='" + val + "']").html();
- display.html(displayText);
- };
- // when an option is clicked, update the hidden field
- var onOptionClick = function(event) {
- // stop click from causing page refresh
- event.preventDefault();
- field.val($(this).attr('data-value'));
- field.change();
- };
- field.change(onFieldChange);
- options.click(onOptionClick);
- });
- };
- // invoke on every div element with 'data-select=true'
- $(function() {
- $('div[data-select=true]').dropSelect();
- });
- })(window.jQuery);
|