public/static/common/js/plugin/multiselect/bootstrap-multiselect.min.js
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
!function(b){if(typeof ko!="undefined"&&ko.bindingHandlers&&!ko.bindingHandlers.multiselect){ko.bindingHandlers.multiselect={init:function(e,f,g,d,c){},update:function(f,g,h,e,c){var d=b(f).data("multiselect");if(!d){b(f).multiselect(ko.utils.unwrapObservable(g()))}else{if(h().options&&h().options().length!==d.originalOptions.length){d.updateOriginalOptions();b(f).multiselect("rebuild")}}}}}function a(c,d){this.options=this.mergeOptions(d);this.$select=b(c);this.originalOptions=this.$select.clone()[0].options;this.query="";this.searchTimeout=null;this.options.multiple=this.$select.attr("multiple")=="multiple";this.options.onChange=b.proxy(this.options.onChange,this);this.buildContainer();this.buildButton();this.buildSelectAll();this.buildDropdown();this.buildDropdownOptions();this.buildFilter();this.updateButtonText();this.$select.hide().after(this.$container)}a.prototype={defaults:{buttonText:function(d,c){if(d.length==0){return this.nonSelectedText+' <b class="caret"></b>'}else{if(d.length>3){return d.length+" "+this.nSelectedText+' <b class="caret"></b>'}else{var e="";d.each(function(){var f=(b(this).attr("label")!==undefined)?b(this).attr("label"):b(this).html();e+=f+", "});return e.substr(0,e.length-2)+' <b class="caret"></b>'}}},buttonTitle:function(d,c){if(d.length==0){return this.nonSelectedText}else{var e="";d.each(function(){e+=b(this).text()+", "});return e.substr(0,e.length-2)}},onChange:function(c,d){},buttonClass:"btn",dropRight:false,selectedClass:"active",buttonWidth:"auto",buttonContainer:'<div class="btn-group" />',maxHeight:false,includeSelectAllOption:false,selectAllText:" Select all",selectAllValue:"multiselect-all",enableFiltering:false,enableCaseInsensitiveFiltering:false,filterPlaceholder:"Search",filterBehavior:"text",preventInputChangeEvent:false,nonSelectedText:"None selected",nSelectedText:"selected"},templates:{button:'<button type="button" class="multiselect dropdown-toggle" data-toggle="dropdown"></button>',ul:'<ul class="multiselect-container dropdown-menu"></ul>',filter:'<div class="input-group"><span class="input-group-addon"><i class="glyphicon glyphicon-search"></i></span><input class="form-control multiselect-search" type="text"></div>',li:'<li><a href="javascript:void(0);"><label></label></a></li>',liGroup:'<li><label class="multiselect-group"></label></li>'},constructor:a,buildContainer:function(){this.$container=b(this.options.buttonContainer)},buildButton:function(){this.$button=b(this.templates.button).addClass(this.options.buttonClass);if(this.$select.prop("disabled")){this.disable()}else{this.enable()}if(this.options.buttonWidth){this.$button.css({width:this.options.buttonWidth})}var c=this.$select.attr("tabindex");if(c){this.$button.attr("tabindex",c)}this.$container.prepend(this.$button)},buildDropdown:function(){this.$ul=b(this.templates.ul);if(this.options.dropRight){this.$ul.addClass("pull-right")}if(this.options.maxHeight){this.$ul.css({"max-height":this.options.maxHeight+"px","overflow-y":"auto","overflow-x":"hidden"})}this.$container.append(this.$ul)},buildDropdownOptions:function(){this.$select.children().each(b.proxy(function(d,e){var c=b(e).prop("tagName").toLowerCase();if(c=="optgroup"){this.createOptgroup(e)}else{if(c=="option"){this.createOptionValue(e)}}},this));b("li input",this.$ul).on("change",b.proxy(function(f){var e=b(f.target).prop("checked")||false;var c=b(f.target).val()==this.options.selectAllValue;if(this.options.selectedClass){if(e){b(f.target).parents("li").addClass(this.options.selectedClass)}else{b(f.target).parents("li").removeClass(this.options.selectedClass)}}var g=b(f.target).val();var h=this.getOptionByValue(g);var i=b("option",this.$select).not(h);var d=b("input",this.$container).not(b(f.target));if(c){d.filter(function(){return b(this).is(":checked")!=e}).trigger("click")}if(e){h.prop("selected",true);if(this.options.multiple){h.prop("selected",true)}else{if(this.options.selectedClass){b(d).parents("li").removeClass(this.options.selectedClass)}b(d).prop("checked",false);i.prop("selected",false);this.$button.click()}if(this.options.selectedClass=="active"){i.parents("a").css("outline","")}}else{h.prop("selected",false)}this.updateButtonText();this.$select.change();this.options.onChange(h,e);if(this.options.preventInputChangeEvent){return false}},this));b("li a",this.$ul).on("touchstart click",function(c){c.stopPropagation();b(c.target).blur()});this.$container.on("keydown",b.proxy(function(f){if(b('input[type="text"]',this.$container).is(":focus")){return}if((f.keyCode==9||f.keyCode==27)&&this.$container.hasClass("open")){this.$button.click()}else{var g=b(this.$container).find("li:not(.divider):visible a");if(!g.length){return}var c=g.index(g.filter(":focus"));if(f.keyCode==38&&c>0){c--}else{if(f.keyCode==40&&c<g.length-1){c++}else{if(!~c){c=0}}}var e=g.eq(c);e.focus();if(f.keyCode==32||f.keyCode==13){var d=e.find("input");d.prop("checked",!d.prop("checked"));d.change()}f.stopPropagation();f.preventDefault()}},this))},createOptionValue:function(d){if(b(d).is(":selected")){b(d).prop("selected",true)}var c=b(d).attr("label")||b(d).html();var h=b(d).val();var g=this.options.multiple?"checkbox":"radio";var i=b(this.templates.li);b("label",i).addClass(g);b("label",i).append('<input type="'+g+'" />');var f=b(d).prop("selected")||false;var e=b("input",i);e.val(h);if(h==this.options.selectAllValue){e.parent().parent().addClass("multiselect-all")}b("label",i).append(" "+c);this.$ul.append(i);if(b(d).is(":disabled")){e.attr("disabled","disabled").prop("disabled",true).parents("li").addClass("disabled")}e.prop("checked",f);if(f&&this.options.selectedClass){e.parents("li").addClass(this.options.selectedClass)}},createOptgroup:function(c){var e=b(c).prop("label");var d=b(this.templates.liGroup);b("label",d).text(e);this.$ul.append(d);b("option",c).each(b.proxy(function(f,g){this.createOptionValue(g)},this))},buildSelectAll:function(){var c=this.$select[0][0]?this.$select[0][0].value==this.options.selectAllValue:false;if(this.options.includeSelectAllOption&&this.options.multiple&&!c){this.$select.prepend('<option value="'+this.options.selectAllValue+'">'+this.options.selectAllText+"</option>")}},buildFilter:function(){if(this.options.enableFiltering||this.options.enableCaseInsensitiveFiltering){var c=Math.max(this.options.enableFiltering,this.options.enableCaseInsensitiveFiltering);if(this.$select.find("option").length>=c){this.$filter=b(this.templates.filter);b("input",this.$filter).attr("placeholder",this.options.filterPlaceholder);this.$ul.prepend(this.$filter);this.$filter.val(this.query).on("click",function(d){d.stopPropagation()}).on("keydown",b.proxy(function(d){clearTimeout(this.searchTimeout);this.searchTimeout=this.asyncFunction(b.proxy(function(){if(this.query!=d.target.value){this.query=d.target.value;b.each(b("li",this.$ul),b.proxy(function(f,g){var i=b("input",g).val();if(i!=this.options.selectAllValue){var j=b("label",g).text();var i=b("input",g).val();if(i&&j&&i!=this.options.selectAllValue){var h=false;var e="";if((this.options.filterBehavior=="text"||this.options.filterBehavior=="both")){e=j}if((this.options.filterBehavior=="value"||this.options.filterBehavior=="both")){e=i}if(this.options.enableCaseInsensitiveFiltering&&e.toLowerCase().indexOf(this.query.toLowerCase())>-1){h=true}else{if(e.indexOf(this.query)>-1){h=true}}if(h){b(g).show()}else{b(g).hide()}}}},this))}},this),300,this)},this))}}},destroy:function(){this.$container.remove();this.$select.show()},refresh:function(){b("option",this.$select).each(b.proxy(function(c,d){var e=b("li input",this.$ul).filter(function(){return b(this).val()==b(d).val()});if(b(d).is(":selected")){e.prop("checked",true);if(this.options.selectedClass){e.parents("li").addClass(this.options.selectedClass)}}else{e.prop("checked",false);if(this.options.selectedClass){e.parents("li").removeClass(this.options.selectedClass)}}if(b(d).is(":disabled")){e.attr("disabled","disabled").prop("disabled",true).parents("li").addClass("disabled")}else{e.prop("disabled",false).parents("li").removeClass("disabled")}},this));this.updateButtonText()},select:function(g){if(g&&!b.isArray(g)){g=[g]}for(var c=0;c<g.length;c++){var e=g[c];var f=this.getOptionByValue(e);var d=this.getInputByValue(e);if(this.options.selectedClass){d.parents("li").addClass(this.options.selectedClass)}d.prop("checked",true);f.prop("selected",true);this.options.onChange(f,true)}this.updateButtonText()},deselect:function(c){if(c&&!b.isArray(c)){c=[c]}for(var d=0;d<c.length;d++){var f=c[d];var g=this.getOptionByValue(f);var e=this.getInputByValue(f);if(this.options.selectedClass){e.parents("li").removeClass(this.options.selectedClass)}e.prop("checked",false);g.prop("selected",false);this.options.onChange(g,false)}this.updateButtonText()},rebuild:function(){this.$ul.html("");b('option[value="'+this.options.selectAllValue+'"]',this.$select).remove();this.options.multiple=this.$select.attr("multiple")=="multiple";this.buildSelectAll();this.buildDropdownOptions();this.updateButtonText();this.buildFilter()},dataprovider:function(c){var d="";c.forEach(function(e){d+='<option value="'+e.value+'">'+e.label+"</option>"});this.$select.html(d);this.rebuild()},enable:function(){this.$select.prop("disabled",false);this.$button.prop("disabled",false).removeClass("disabled")},disable:function(){this.$select.prop("disabled",true);this.$button.prop("disabled",true).addClass("disabled")},setOptions:function(c){this.options=this.mergeOptions(c)},mergeOptions:function(c){return b.extend({},this.defaults,c)},updateButtonText:function(){var c=this.getSelected();b("button",this.$container).html(this.options.buttonText(c,this.$select));b("button",this.$container).attr("title",this.options.buttonTitle(c,this.$select))},getSelected:function(){return b('option[value!="'+this.options.selectAllValue+'"]:selected',this.$select).filter(function(){return b(this).prop("selected")})},getOptionByValue:function(c){return b("option",this.$select).filter(function(){return b(this).val()==c})},getInputByValue:function(c){return b("li input",this.$ul).filter(function(){return b(this).val()==c})},updateOriginalOptions:function(){this.originalOptions=this.$select.clone()[0].options},asyncFunction:function(f,e,c){var d=Array.prototype.slice.call(arguments,3);return setTimeout(function(){f.apply(c||window,d)},e)}};b.fn.multiselect=function(c,d){return this.each(function(){var f=b(this).data("multiselect"),e=typeof c=="object"&&c;if(!f){b(this).data("multiselect",(f=new a(this,e)))}if(typeof c=="string"){f[c](d)}})};b.fn.multiselect.Constructor=a;b(function(){b("select[data-role=multiselect]").multiselect()})}(window.jQuery);
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。