123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- /**
- * jQuery EasyUI 1.5.2
- *
- * Copyright (c) 2009-2017 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=$.data(_2,"numberbox");
- var _4=_3.options;
- $(_2).addClass("numberbox-f").textbox(_4);
- $(_2).textbox("textbox").css({imeMode:"disabled"});
- $(_2).attr("numberboxName",$(_2).attr("textboxName"));
- _3.numberbox=$(_2).next();
- _3.numberbox.addClass("numberbox");
- var _5=_4.parser.call(_2,_4.value);
- var _6=_4.formatter.call(_2,_5);
- $(_2).numberbox("initValue",_5).numberbox("setText",_6);
- };
- function _7(_8,_9){
- var _a=$.data(_8,"numberbox");
- var _b=_a.options;
- _b.value=parseFloat(_9);
- var _9=_b.parser.call(_8,_9);
- var _c=_b.formatter.call(_8,_9);
- _b.value=_9;
- $(_8).textbox("setText",_c).textbox("setValue",_9);
- _c=_b.formatter.call(_8,$(_8).textbox("getValue"));
- $(_8).textbox("setText",_c);
- };
- $.fn.numberbox=function(_d,_e){
- if(typeof _d=="string"){
- var _f=$.fn.numberbox.methods[_d];
- if(_f){
- return _f(this,_e);
- }else{
- return this.textbox(_d,_e);
- }
- }
- _d=_d||{};
- return this.each(function(){
- var _10=$.data(this,"numberbox");
- if(_10){
- $.extend(_10.options,_d);
- }else{
- _10=$.data(this,"numberbox",{options:$.extend({},$.fn.numberbox.defaults,$.fn.numberbox.parseOptions(this),_d)});
- }
- _1(this);
- });
- };
- $.fn.numberbox.methods={options:function(jq){
- var _11=jq.data("textbox")?jq.textbox("options"):{};
- return $.extend($.data(jq[0],"numberbox").options,{width:_11.width,originalValue:_11.originalValue,disabled:_11.disabled,readonly:_11.readonly});
- },fix:function(jq){
- return jq.each(function(){
- var _12=$(this).numberbox("options");
- _12.value=null;
- var _13=_12.parser.call(this,$(this).numberbox("getText"));
- $(this).numberbox("setValue",_13);
- });
- },setValue:function(jq,_14){
- return jq.each(function(){
- _7(this,_14);
- });
- },clear:function(jq){
- return jq.each(function(){
- $(this).textbox("clear");
- $(this).numberbox("options").value="";
- });
- },reset:function(jq){
- return jq.each(function(){
- $(this).textbox("reset");
- $(this).numberbox("setValue",$(this).numberbox("getValue"));
- });
- }};
- $.fn.numberbox.parseOptions=function(_15){
- var t=$(_15);
- return $.extend({},$.fn.textbox.parseOptions(_15),$.parser.parseOptions(_15,["decimalSeparator","groupSeparator","suffix",{min:"number",max:"number",precision:"number"}]),{prefix:(t.attr("prefix")?t.attr("prefix"):undefined)});
- };
- $.fn.numberbox.defaults=$.extend({},$.fn.textbox.defaults,{inputEvents:{keypress:function(e){
- var _16=e.data.target;
- var _17=$(_16).numberbox("options");
- return _17.filter.call(_16,e);
- },blur:function(e){
- $(e.data.target).numberbox("fix");
- },keydown:function(e){
- if(e.keyCode==13){
- $(e.data.target).numberbox("fix");
- }
- }},min:null,max:null,precision:0,decimalSeparator:".",groupSeparator:"",prefix:"",suffix:"",filter:function(e){
- var _18=$(this).numberbox("options");
- var s=$(this).numberbox("getText");
- if(e.metaKey||e.ctrlKey){
- return true;
- }
- if($.inArray(String(e.which),["46","8","13","0"])>=0){
- return true;
- }
- var tmp=$("<span></span>");
- tmp.html(String.fromCharCode(e.which));
- var c=tmp.text();
- tmp.remove();
- if(!c){
- return true;
- }
- if(c=="-"||c==_18.decimalSeparator){
- return (s.indexOf(c)==-1)?true:false;
- }else{
- if(c==_18.groupSeparator){
- return true;
- }else{
- if("0123456789".indexOf(c)>=0){
- return true;
- }else{
- return false;
- }
- }
- }
- },formatter:function(_19){
- if(!_19){
- return _19;
- }
- _19=_19+"";
- var _1a=$(this).numberbox("options");
- var s1=_19,s2="";
- var _1b=_19.indexOf(".");
- if(_1b>=0){
- s1=_19.substring(0,_1b);
- s2=_19.substring(_1b+1,_19.length);
- }
- if(_1a.groupSeparator){
- var p=/(\d+)(\d{3})/;
- while(p.test(s1)){
- s1=s1.replace(p,"$1"+_1a.groupSeparator+"$2");
- }
- }
- if(s2){
- return _1a.prefix+s1+_1a.decimalSeparator+s2+_1a.suffix;
- }else{
- return _1a.prefix+s1+_1a.suffix;
- }
- },parser:function(s){
- s=s+"";
- var _1c=$(this).numberbox("options");
- if(_1c.prefix){
- s=$.trim(s.replace(new RegExp("\\"+$.trim(_1c.prefix),"g"),""));
- }
- if(_1c.suffix){
- s=$.trim(s.replace(new RegExp("\\"+$.trim(_1c.suffix),"g"),""));
- }
- if(parseFloat(s)!=_1c.value){
- if(_1c.groupSeparator){
- s=$.trim(s.replace(new RegExp("\\"+_1c.groupSeparator,"g"),""));
- }
- if(_1c.decimalSeparator){
- s=$.trim(s.replace(new RegExp("\\"+_1c.decimalSeparator,"g"),"."));
- }
- s=s.replace(/\s/g,"");
- }
- var val=parseFloat(s).toFixed(_1c.precision);
- if(isNaN(val)){
- val="";
- }else{
- if(typeof (_1c.min)=="number"&&val<_1c.min){
- val=_1c.min.toFixed(_1c.precision);
- }else{
- if(typeof (_1c.max)=="number"&&val>_1c.max){
- val=_1c.max.toFixed(_1c.precision);
- }
- }
- }
- return val;
- }});
- })(jQuery);
|