You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
165 lines
4.8 KiB
165 lines
4.8 KiB
3 months ago
|
/**
|
||
|
* jQuery EasyUI 1.3.6
|
||
|
*
|
||
|
* Copyright (c) 2009-2014 www.jeasyui.com. All rights reserved.
|
||
|
*
|
||
|
* Licensed under the GPL license: http://www.gnu.org/licenses/gpl.txt
|
||
|
* To use it on other terms please contact us at info@jeasyui.com
|
||
|
*
|
||
|
*/
|
||
|
(function($){
|
||
|
function _1(_2){
|
||
|
var _3=$.data(_2,"datetimebox");
|
||
|
var _4=_3.options;
|
||
|
$(_2).datebox($.extend({},_4,{onShowPanel:function(){
|
||
|
var _5=$(_2).datetimebox("getValue");
|
||
|
_8(_2,_5,true);
|
||
|
_4.onShowPanel.call(_2);
|
||
|
},formatter:$.fn.datebox.defaults.formatter,parser:$.fn.datebox.defaults.parser}));
|
||
|
$(_2).removeClass("datebox-f").addClass("datetimebox-f");
|
||
|
$(_2).datebox("calendar").calendar({onSelect:function(_6){
|
||
|
_4.onSelect.call(_2,_6);
|
||
|
}});
|
||
|
var _7=$(_2).datebox("panel");
|
||
|
if(!_3.spinner){
|
||
|
var p=$("<div style=\"padding:2px\"><input style=\"width:80px\"></div>").insertAfter(_7.children("div.datebox-calendar-inner"));
|
||
|
_3.spinner=p.children("input");
|
||
|
}
|
||
|
_3.spinner.timespinner({showSeconds:_4.showSeconds,separator:_4.timeSeparator}).unbind(".datetimebox").bind("mousedown.datetimebox",function(e){
|
||
|
e.stopPropagation();
|
||
|
});
|
||
|
_8(_2,_4.value);
|
||
|
};
|
||
|
function _9(_a){
|
||
|
var c=$(_a).datetimebox("calendar");
|
||
|
var t=$(_a).datetimebox("spinner");
|
||
|
var _b=c.calendar("options").current;
|
||
|
return new Date(_b.getFullYear(),_b.getMonth(),_b.getDate(),t.timespinner("getHours"),t.timespinner("getMinutes"),t.timespinner("getSeconds"));
|
||
|
};
|
||
|
function _c(_d,q){
|
||
|
_8(_d,q,true);
|
||
|
};
|
||
|
function _e(_f){
|
||
|
var _10=$.data(_f,"datetimebox").options;
|
||
|
var _11=_9(_f);
|
||
|
_8(_f,_10.formatter.call(_f,_11));
|
||
|
$(_f).combo("hidePanel");
|
||
|
};
|
||
|
function _8(_12,_13,_14){
|
||
|
var _15=$.data(_12,"datetimebox").options;
|
||
|
$(_12).combo("setValue",_13);
|
||
|
if(!_14){
|
||
|
if(_13){
|
||
|
var _16=_15.parser.call(_12,_13);
|
||
|
$(_12).combo("setValue",_15.formatter.call(_12,_16));
|
||
|
$(_12).combo("setText",_15.formatter.call(_12,_16));
|
||
|
}else{
|
||
|
$(_12).combo("setText",_13);
|
||
|
}
|
||
|
}
|
||
|
var _16=_15.parser.call(_12,_13);
|
||
|
$(_12).datetimebox("calendar").calendar("moveTo",_16);
|
||
|
$(_12).datetimebox("spinner").timespinner("setValue",_17(_16));
|
||
|
function _17(_18){
|
||
|
function _19(_1a){
|
||
|
return (_1a<10?"0":"")+_1a;
|
||
|
};
|
||
|
var tt=[_19(_18.getHours()),_19(_18.getMinutes())];
|
||
|
if(_15.showSeconds){
|
||
|
tt.push(_19(_18.getSeconds()));
|
||
|
}
|
||
|
return tt.join($(_12).datetimebox("spinner").timespinner("options").separator);
|
||
|
};
|
||
|
};
|
||
|
$.fn.datetimebox=function(_1b,_1c){
|
||
|
if(typeof _1b=="string"){
|
||
|
var _1d=$.fn.datetimebox.methods[_1b];
|
||
|
if(_1d){
|
||
|
return _1d(this,_1c);
|
||
|
}else{
|
||
|
return this.datebox(_1b,_1c);
|
||
|
}
|
||
|
}
|
||
|
_1b=_1b||{};
|
||
|
return this.each(function(){
|
||
|
var _1e=$.data(this,"datetimebox");
|
||
|
if(_1e){
|
||
|
$.extend(_1e.options,_1b);
|
||
|
}else{
|
||
|
$.data(this,"datetimebox",{options:$.extend({},$.fn.datetimebox.defaults,$.fn.datetimebox.parseOptions(this),_1b)});
|
||
|
}
|
||
|
_1(this);
|
||
|
});
|
||
|
};
|
||
|
$.fn.datetimebox.methods={options:function(jq){
|
||
|
var _1f=jq.datebox("options");
|
||
|
return $.extend($.data(jq[0],"datetimebox").options,{originalValue:_1f.originalValue,disabled:_1f.disabled,readonly:_1f.readonly});
|
||
|
},spinner:function(jq){
|
||
|
return $.data(jq[0],"datetimebox").spinner;
|
||
|
},setValue:function(jq,_20){
|
||
|
return jq.each(function(){
|
||
|
_8(this,_20);
|
||
|
});
|
||
|
},reset:function(jq){
|
||
|
return jq.each(function(){
|
||
|
var _21=$(this).datetimebox("options");
|
||
|
$(this).datetimebox("setValue",_21.originalValue);
|
||
|
});
|
||
|
}};
|
||
|
$.fn.datetimebox.parseOptions=function(_22){
|
||
|
var t=$(_22);
|
||
|
return $.extend({},$.fn.datebox.parseOptions(_22),$.parser.parseOptions(_22,["timeSeparator",{showSeconds:"boolean"}]));
|
||
|
};
|
||
|
$.fn.datetimebox.defaults=$.extend({},$.fn.datebox.defaults,{showSeconds:true,timeSeparator:":",keyHandler:{up:function(e){
|
||
|
},down:function(e){
|
||
|
},left:function(e){
|
||
|
},right:function(e){
|
||
|
},enter:function(e){
|
||
|
_e(this);
|
||
|
},query:function(q,e){
|
||
|
_c(this,q);
|
||
|
}},buttons:[{text:function(_23){
|
||
|
return $(_23).datetimebox("options").currentText;
|
||
|
},handler:function(_24){
|
||
|
$(_24).datetimebox("calendar").calendar({year:new Date().getFullYear(),month:new Date().getMonth()+1,current:new Date()});
|
||
|
_e(_24);
|
||
|
}},{text:function(_25){
|
||
|
return $(_25).datetimebox("options").okText;
|
||
|
},handler:function(_26){
|
||
|
_e(_26);
|
||
|
}},{text:function(_27){
|
||
|
return $(_27).datetimebox("options").closeText;
|
||
|
},handler:function(_28){
|
||
|
$(this).closest("div.combo-panel").panel("close");
|
||
|
}}],formatter:function(_29){
|
||
|
var h=_29.getHours();
|
||
|
var M=_29.getMinutes();
|
||
|
var s=_29.getSeconds();
|
||
|
function _2a(_2b){
|
||
|
return (_2b<10?"0":"")+_2b;
|
||
|
};
|
||
|
var _2c=$(this).datetimebox("spinner").timespinner("options").separator;
|
||
|
var r=$.fn.datebox.defaults.formatter(_29)+" "+_2a(h)+_2c+_2a(M);
|
||
|
if($(this).datetimebox("options").showSeconds){
|
||
|
r+=_2c+_2a(s);
|
||
|
}
|
||
|
return r;
|
||
|
},parser:function(s){
|
||
|
if($.trim(s)==""){
|
||
|
return new Date();
|
||
|
}
|
||
|
var dt=s.split(" ");
|
||
|
var d=$.fn.datebox.defaults.parser(dt[0]);
|
||
|
if(dt.length<2){
|
||
|
return d;
|
||
|
}
|
||
|
var _2d=$(this).datetimebox("spinner").timespinner("options").separator;
|
||
|
var tt=dt[1].split(_2d);
|
||
|
var _2e=parseInt(tt[0],10)||0;
|
||
|
var _2f=parseInt(tt[1],10)||0;
|
||
|
var _30=parseInt(tt[2],10)||0;
|
||
|
return new Date(d.getFullYear(),d.getMonth(),d.getDate(),_2e,_2f,_30);
|
||
|
}});
|
||
|
})(jQuery);
|
||
|
|