Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function DropDown(el) {
- this.dd = el;
- this.placeholder = this.dd.children('span');
- this.opts = this.dd.find('ul.dropdown > li');
- this.val = '';
- this.index = -1;
- this.initEvents();
- // Prepare Form / input selection
- var $input = $('input[name="' + this.dd.children('ul').attr('data-target') + '"]');
- var $form = this.dd.parents('form');
- // Check if the form exist
- if ($form.length) {
- if (!$input.length) {
- $input = $('<input type="hidden" name="' + this.dd.children('ul').attr('data-target') + '" value="" />');
- $input.appendTo($form);
- }
- }
- this.input = $input;
- }
- DropDown.prototype = {
- initEvents : function() {
- var obj = this;
- obj.dd.on('click', function(event){
- $(this).toggleClass('active');
- return false;
- });
- obj.opts.on('click',function(e){
- var opt = $(this);
- obj.val = opt.text();
- obj.index = opt.index();
- obj.placeholder.text(obj.val);
- if (obj.input) {
- obj.input.attr('value', $(this).attr('data-id'));
- }
- });
- },
- getValue : function() {
- return this.val;
- },
- getIndex : function() {
- return this.index;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement