(function( $ ){ var multiSelectId=-1; $.fn.multiSelect=function(options){ multiSelectId++; var settings = { 'createCallback':false, 'createText':false, 'title':this.attr('title'), 'checked':[], 'oncheck':false, 'onuncheck':false, 'minWidth': 'default;', }; $.extend(settings,options); var button=$('
'+settings.title+'
'); var span=$(''); span.append(button); button.data('id',multiSelectId); button.selectedItems=[]; this.hide(); this.before(span); if(settings.minWidth=='default'){ settings.minWidth=button.width(); } button.css('min-width',settings.minWidth); settings.minOuterWidth=button.outerWidth()-2; button.data('settings',settings); if(settings.checked.length>0){ button.children('span').first().text(settings.checked.join(', ')); } button.click(function(event){ var button=$(this); if(button.parent().children('ul').length>0){ button.parent().children('ul').slideUp(400,function(){ button.parent().children('ul').remove(); button.removeClass('active'); }); return; } var lists=$('ul.multiselectoptions'); lists.slideUp(400,function(){ lists.remove(); $('div.multiselect').removeClass('active'); button.addClass('active'); }); button.addClass('active'); event.stopPropagation(); var options=$(this).parent().next().children().map(function(){return $(this).val();}); var list=$('