packages/TelerikMvcExtensions.2012.1.214/content/Scripts/2012.1.214/telerik.combobox.min.js
(完整代码) 7KB(function(a){var b=a.telerik;b.scripts.push("telerik.combobox.js");b.combobox=function(i,o){if(o&&o.enabled===undefined){o.enabled=!a(i).is("[disabled]")}a.extend(this,o);var l=i.nodeName.toLowerCase()=="input"&&i.type.toLowerCase()=="text";var k=i.nodeName.toLowerCase()=="select";if((l||k)&&!a(i).parent().hasClass("t-combobox")){if(k&&!this.data){this.data=b.list.retrieveData(i)}var j=new b.list.htmlBuilder(i,"t-combobox",k);j.text=function(u){var t=u.builder;t.buffer=[];return a(t.cat('<input class="t-input" autocomplete="off" type="text" ').catIf('value="',u.text,'" ',u.text).catIf('name="',u.name,'-input" ',u.name).cat("/>").string())};j.render();if(k){i=i.previousSibling}}this.element=i;var q=this;var d=this.$element=a(i).closest("form").bind("reset",function(){setTimeout(function(){q.value(i.value)})}).end();this.loader=new b.list.loader(this);this.trigger=new b.list.trigger(this);var g=this.$wrapper=d.closest(".t-combobox");var e=this.$wrapper.find(".t-select");var f=this.$text=this.$wrapper.find("> .t-dropdown-wrap > .t-input").attr("autocomplete","off").bind("paste",a.proxy(function(t){setTimeout(a.proxy(function(){this.$element.val(t.target.value);p(this)},this),0)},this));var s=function(v){var t="class",u=d.attr(t)||"";if((v.attrName&&v.attrName==t)||(v.propertyName&&v.propertyName=="className")){if(u!=f.attr(t)){f.attr(t,u).addClass("t-input")}}};if(a.browser.msie){i.attachEvent("onpropertychange",s)}else{d.bind("DOMAttrModified",s)}d.closest("form").bind("reset",a.proxy(function(t){var u=this;window.setTimeout(function(){if(d.val()!=""){u.value(d.val())}else{u.highlight(0);u.selectedIndex=0}},1)},this));this.filtering=new b.list.filtering(this);this.filtering.autoFill=function(t,x){if(t.autoFill&&(t.lastKeyCode!=8&&t.lastKeyCode!=46)){var w=t.$text[0];var u=b.caretPos(w);var v=w.value.substring(0,u);var y=x.toLowerCase().indexOf(v.toLowerCase());if(y!=-1){var z=x.substring(y+v.length);w.value=v+z;b.list.selection(w,u,u+z.length)}}};this.dropDown=new b.dropDown({attr:this.dropDownAttr,effects:this.effects,onOpen:a.proxy(function(){var t=this.data;var u=this.dropDown;if(t.length==0){return}var w=this.$text.val();var v=this.selectedIndex;if(v!=-1&&this.isFiltered){if(w==t[v].Text){this.filteredDataIndexes=[];u.onItemCreate=null;if(this.filter){u.dataBind(this.data,this.encoded)}this.select(u.$items[v])}else{this.filters[this.filter](this,this.data,w)}this.isFiltered=false}},this),onClick:a.proxy(function(t){this.select(t.item);this.trigger.change();this.trigger.close();f.focus()},this)});this.dropDown.$element.css("direction",g.closest(".t-rtl").length?"rtl":"");this.enable=function(){g.removeClass("t-state-disabled");f.removeAttr("disabled");d.removeAttr("disabled");if(!e.data("events")){e.bind("click",a.proxy(r,this))}};this.disable=function(){g.addClass("t-state-disabled");f.attr("disabled","disabled");d.attr("disabled","disabled");e.unbind("click")};this[this.enabled?"enable":"disable"]();this.fill=function(t,x){function B(E){var I=E.selectedValue||E.value();if(I){E.value(I);return}var C=u.$items;var G=E.index;var D=C.filter(".t-state-selected");var H=D.length;var F=G!=-1&&G<C.length?C[G]:H>0?D[H-1]:null;if(F){E.select(F)}else{E.selectedIndex=-1;if(E.highlightFirst){E.highlight(C[0])}}}var v=this.loader;var u=this.dropDown;var w=this.minChars;var z=this.text();var A=z.length;if(!u.$items&&!v.ajaxError){if((v.isAjax()||this.onDataBinding)&&A>=w){x=x||{};var y=a.extend({},x);y[this.queryString.text]=z;v.ajaxRequest(function(C){this.dataBind(C,true);B(this);b.trigger(this.element,"dataBound");this.trigger.change();if(t){t()}},{data:y})}else{this.dataBind(this.data,true);B(this);if(t){t()}}}};this.reload=function(){this.dropDown.$items=null;if(arguments.length){this.fill(arguments[0],arguments[1])}else{this.fill()}};this.select=function(w){var v=this.highlight(w);if(v!=-1){var u=this.filteredDataIndexes;this.selectedIndex=(u&&u.length)>0?u[v]:v;var t=this.data[this.selectedIndex];b.list.updateTextAndValue(this,t.Text,t.Value)}return v};this.text=function(){return this.$text.val.apply(this.$text,arguments)};this.value=function(){if(arguments.length){var u=arguments[0];var t=this.select(function(v){return u==(v.Value||v.Text)});if(t==-1){this.selectedIndex=t;this.$element.val(u);this.text(u)}this.previousValue=this.$element.val()}else{return this.$element.val()}};b.list.common.call(this);b.list.filters.call(this);b.list.initialize.call(this);a(document.documentElement).bind("mousedown",a.proxy(function(v){var t=this.dropDown.$element;var w=t&&t.parent().length>0;if(a.contains(this.$wrapper[0],v.target)||(w&&a.contains(t.parent()[0],v.target))){return}if(this._textChanged){this._textChanged=false;var u=c(this.data,this.$text.val());if(u){this.selectedIndex=u.index;this.text(u.dataItem.Text);this.$element.val(u.dataItem.Value||u.dataItem.Text)}}this.trigger.change();this.trigger.close()},this));this.$text.bind({keydown:a.proxy(m,this),keypress:a.proxy(n,this),focus:a.proxy(function(v){if(this.openOnFocus){var w=this.trigger;var u=this.dropDown;if(!u.$items){this.fill(w.open)}else{w.open()}}var t=this.$text;clearTimeout(this.selectTextTimeout);this.selectTextTimeout=window.setTimeout(function(){b.list.selection(t[0],0,t.val().length)},130)},this),blur:a.proxy(function(){clearTimeout(this.selectTextTimeout)},this)});function r(u){var t=this.dropDown,v=this.trigger;this.loader.ajaxError=false;if(!t.isOpened()){if(!t.$items){this.fill(v.open)}else{v.open()}f[0].focus()}else{v.close()}}function p(t){clearTimeout(t.timeout);t.timeout=setTimeout(function(){t.filtering.filter(t)},t.delay)}function m(y){var B=this.trigger;var x=this.dropDown;var z=y.keyCode||y.which;this.lastKeyCode=z;if(y.altKey){if(z==38||z==40){var v=z==38?B.close:B.open;if(!x.$items){this.fill(v)}else{v()}}return}if(!y.shiftKey&&(z==38||z==40)){y.preventDefault();var A=a.proxy(function(){var D=x.$items,E=D.filter(".t-state-selected:first");var C=E.length==0||D.length==1||this.selectedIndex==-1?D.first():(z==38)?E.prev():(z==40)?E.next():[];if(C.length){var F=C[0];this.select(F);x.scrollTo(F);if(!x.isOpened()){B.change()}}},this);if(!x.$items){if(this.index!=-1||this.value()||this.selectedValue){A=null}this.fill(A);return}A();return}if(z==8||z==46||(y.ctrlKey&&z==88)){var u=this.$text;if(u.val()!=""){p(this)}setTimeout(a.proxy(function(){if(u.val()==""){this.selectedIndex=-1;this.$element.val("")}else{this.$element.val(this.$text.val())}},this),0);return}if(z==13){if(x.isOpened()){y.preventDefault();var t=x.$items.filter(".t-state-selected:first");if(t.length>0){this.select(t[0])}else{this.$element.val(this.$text.val())}B.change();B.close();b.list.moveToEnd(this.$text[0])}return}if(z==27||z==9){clearTimeout(this.timeout);var w=c(this.data,this.$text.val());if(w){this.selectedIndex=w.index;this.text(w.dataItem.Text);this.$element.val(w.dataItem.Value||w.dataItem.Text)}B.change();B.close();if(z==27){this.$text.blur()}return}p(this)}function n(t){this._textChanged=true;var u=t.keyCode||t.charCode;if(!t.shiftKey&&(u==0||a.inArray(u,b.list.keycodes)!=-1||t.ctrlKey)){return true}setTimeout(a.proxy(function(){this.$element.val(this.$text.val())},this),0)}if(q.cascadeTo){var h=a("#"+q.cascadeTo).attr("disabled","disabled");q.$element.bind("valueChange",a.proxy(function(){var t=h.data("tComboBox");if(t){var v=[],u={};u[q.$element.attr("name")]=q.value();if(t.loader.isAjax()){if(q.placeholder){v[0]={Text:q.placeholder,Value:""}}t.dataBind(v)}t.select(0);t.disable();if(q.value()===""&&q.placeholder){t.$element.trigger("valueChange");return}t.reload(function(){var w=v[0]?1:0;if(t.data[w]){t.enable()}},u)}},q))}};function c(d,g){if(!g){return}if(d){for(var f=0,h=d.length;f<h;f++){var e=d[f],j=e.Text;if(j==g){return{dataItem:e,index:f}}}}}a.fn.tComboBox=function(d){return b.create(this,{name:"tComboBox",init:function(e,f){return new b.combobox(e,f)},options:d})};a.fn.tComboBox.defaults={encoded:true,openOnFocus:false,effects:b.fx.slide.defaults(),index:-1,autoFill:true,highlightFirst:true,filter:0,delay:200,minChars:0,cache:true,queryString:{text:"text"}}})(jQuery);
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
