123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- /**
- * EasyUI for jQuery 1.6.10
- *
- * Copyright (c) 2009-2018 www.jeasyui.com. All rights reserved.
- *
- * Licensed under the freeware license: http://www.jeasyui.com/license_freeware.php
- * To use it on other terms please contact us: info@jeasyui.com
- *
- */
- (function($){
- function _1(_2){
- var _3=$(_2).data("maskedbox");
- var _4=_3.options;
- $(_2).textbox(_4);
- $(_2).maskedbox("initValue",_4.value);
- };
- function _5(_6,_7){
- var _8=$(_6).maskedbox("options");
- var tt=(_7||$(_6).maskedbox("getText")||"").split("");
- var vv=[];
- for(var i=0;i<_8.mask.length;i++){
- if(_8.masks[_8.mask[i]]){
- var t=tt[i];
- vv.push(t!=_8.promptChar?t:" ");
- }
- }
- return vv.join("");
- };
- function _9(_a,_b){
- var _c=$(_a).maskedbox("options");
- var cc=_b.split("");
- var tt=[];
- for(var i=0;i<_c.mask.length;i++){
- var m=_c.mask[i];
- var r=_c.masks[m];
- if(r){
- var c=cc.shift();
- if(c!=undefined){
- var d=new RegExp(r,"i");
- if(d.test(c)){
- tt.push(c);
- continue;
- }
- }
- tt.push(_c.promptChar);
- }else{
- tt.push(m);
- }
- }
- return tt.join("");
- };
- function _d(_e,c){
- var _f=$(_e).maskedbox("options");
- var _10=$(_e).maskedbox("getSelectionRange");
- var _11=_12(_e,_10.start);
- var end=_12(_e,_10.end);
- if(_11!=-1){
- var r=new RegExp(_f.masks[_f.mask[_11]],"i");
- if(r.test(c)){
- var vv=_5(_e).split("");
- var _13=_11-_14(_e,_11);
- var _15=end-_14(_e,end);
- vv.splice(_13,_15-_13,c);
- $(_e).maskedbox("setValue",_9(_e,vv.join("")));
- _11=_12(_e,++_11);
- $(_e).maskedbox("setSelectionRange",{start:_11,end:_11});
- }
- }
- };
- function _16(_17,_18){
- var _19=$(_17).maskedbox("options");
- var vv=_5(_17).split("");
- var _1a=$(_17).maskedbox("getSelectionRange");
- if(_1a.start==_1a.end){
- if(_18){
- var _1b=_1c(_17,_1a.start);
- }else{
- var _1b=_12(_17,_1a.start);
- }
- var _1d=_1b-_14(_17,_1b);
- if(_1d>=0){
- vv.splice(_1d,1);
- }
- }else{
- var _1b=_12(_17,_1a.start);
- var end=_1c(_17,_1a.end);
- var _1d=_1b-_14(_17,_1b);
- var _1e=end-_14(_17,end);
- vv.splice(_1d,_1e-_1d+1);
- }
- $(_17).maskedbox("setValue",_9(_17,vv.join("")));
- $(_17).maskedbox("setSelectionRange",{start:_1b,end:_1b});
- };
- function _14(_1f,pos){
- var _20=$(_1f).maskedbox("options");
- var _21=0;
- if(pos>=_20.mask.length){
- pos--;
- }
- for(var i=pos;i>=0;i--){
- if(_20.masks[_20.mask[i]]==undefined){
- _21++;
- }
- }
- return _21;
- };
- function _12(_22,pos){
- var _23=$(_22).maskedbox("options");
- var m=_23.mask[pos];
- var r=_23.masks[m];
- while(pos<_23.mask.length&&!r){
- pos++;
- m=_23.mask[pos];
- r=_23.masks[m];
- }
- return pos;
- };
- function _1c(_24,pos){
- var _25=$(_24).maskedbox("options");
- var m=_25.mask[--pos];
- var r=_25.masks[m];
- while(pos>=0&&!r){
- pos--;
- m=_25.mask[pos];
- r=_25.masks[m];
- }
- return pos<0?0:pos;
- };
- function _26(e){
- if(e.metaKey||e.ctrlKey){
- return;
- }
- var _27=e.data.target;
- var _28=$(_27).maskedbox("options");
- var _29=[9,13,35,36,37,39];
- if($.inArray(e.keyCode,_29)!=-1){
- return true;
- }
- if(e.keyCode>=96&&e.keyCode<=105){
- e.keyCode-=48;
- }
- var c=String.fromCharCode(e.keyCode);
- if(e.keyCode>=65&&e.keyCode<=90&&!e.shiftKey){
- c=c.toLowerCase();
- }else{
- if(e.keyCode==189){
- c="-";
- }else{
- if(e.keyCode==187){
- c="+";
- }else{
- if(e.keyCode==190){
- c=".";
- }
- }
- }
- }
- if(e.keyCode==8){
- _16(_27,true);
- }else{
- if(e.keyCode==46){
- _16(_27,false);
- }else{
- _d(_27,c);
- }
- }
- return false;
- };
- $.extend($.fn.textbox.methods,{inputMask:function(jq,_2a){
- return jq.each(function(){
- var _2b=this;
- var _2c=$.extend({},$.fn.maskedbox.defaults,_2a);
- $.data(_2b,"maskedbox",{options:_2c});
- var _2d=$(_2b).textbox("textbox");
- _2d.unbind(".maskedbox");
- for(var _2e in _2c.inputEvents){
- _2d.bind(_2e+".maskedbox",{target:_2b},_2c.inputEvents[_2e]);
- }
- });
- }});
- $.fn.maskedbox=function(_2f,_30){
- if(typeof _2f=="string"){
- var _31=$.fn.maskedbox.methods[_2f];
- if(_31){
- return _31(this,_30);
- }else{
- return this.textbox(_2f,_30);
- }
- }
- _2f=_2f||{};
- return this.each(function(){
- var _32=$.data(this,"maskedbox");
- if(_32){
- $.extend(_32.options,_2f);
- }else{
- $.data(this,"maskedbox",{options:$.extend({},$.fn.maskedbox.defaults,$.fn.maskedbox.parseOptions(this),_2f)});
- }
- _1(this);
- });
- };
- $.fn.maskedbox.methods={options:function(jq){
- var _33=jq.textbox("options");
- return $.extend($.data(jq[0],"maskedbox").options,{width:_33.width,value:_33.value,originalValue:_33.originalValue,disabled:_33.disabled,readonly:_33.readonly});
- },initValue:function(jq,_34){
- return jq.each(function(){
- _34=_9(this,_5(this,_34));
- $(this).textbox("initValue",_34);
- });
- },setValue:function(jq,_35){
- return jq.each(function(){
- _35=_9(this,_5(this,_35));
- $(this).textbox("setValue",_35);
- });
- }};
- $.fn.maskedbox.parseOptions=function(_36){
- var t=$(_36);
- return $.extend({},$.fn.textbox.parseOptions(_36),$.parser.parseOptions(_36,["mask","promptChar"]),{});
- };
- $.fn.maskedbox.defaults=$.extend({},$.fn.textbox.defaults,{mask:"",promptChar:"_",masks:{"9":"[0-9]","a":"[a-zA-Z]","*":"[0-9a-zA-Z]"},inputEvents:{keydown:_26}});
- })(jQuery);
|