Heim >Web-Frontend >js-Tutorial >js日历控件(可精确到分钟)_时间日期

js日历控件(可精确到分钟)_时间日期

WBOY
WBOYOriginal
2016-05-16 19:00:471170Durchsuche
" str += "" str += "" str += "" str += "" str += "" str += "
" str += "" str += "" str += "" return str; } this.play = function() { this.timer = setInterval(this.name+".playback()",1000); } this.formatTime = function(sTime) { sTime = ("0"+sTime); return sTime.substr(sTime.length-2); } this.playback = function() { var objDate = new Date(); var arrDate = [objDate.getHours(),objDate.getMinutes(),objDate.getSeconds()]; var objMinute = document.getElementsByName(this.fName); for (var i=0;iradix||obj.value"; str += ""; str += ""; str += this.drawMonth(); str += ""; str += ""; str += this.drawYear(); str += ""; str += ""; str += ""; str += ""; str += "
"; str += ""; str += ""; str += ""; str += ""; str += "
"; str += this.drawDate(); str += "
"; str += ""; str += ""; str += ""; return str; } //private this.drawYear = function() { var str = ""; str += ""; str += ""; str += ""; str += ""; str += ""; str += "
"; str += ""; //DateField str += ""; str += ""; str += ""; str += ""; str += ""; str += ""; str += ""; str += ""; str += ""; str += "
"; str += "
"; return str; } //priavate this.drawMonth = function() { //alert(this.fName); var aMonthName = ["一","二","三","四","五","六","七","八","九","十","十一","十二"]; var str = ""; str += ""; return str; } //private this.drawDate = function() { var str = ""; var fDay = new Date(this.year,this.month,1).getDay(); var fDate = 1-fDay; var lDay = new Date(this.year,this.month+1,0).getDay(); var lDate = new Date(this.year,this.month+1,0).getDate(); str += ""; for (var i=1,j=fDate;i"; for (var k=0;k"+(isDate(j++))+""; } str += ""; } str += "
"; return str; function isDate(n) { return (n>=1&&nnew Date(this.year,this.month+1,0).getDate()) this.date = new Date(this.year,this.month+1,0).getDate(); document.getElementById(this.fName+"_dateTable").outerHTML = this.drawDate(); //alert(this.year); //alert(this.month); //alert(this.date); getDateTime(); } //public this.getDate = function(delimiter) { var s_month,s_date; s_month=this.month+1; s_date=this.date; s_month = ("0"+s_month); s_month=s_month.substr(s_month.length-2); s_date = ("0"+s_date); s_date=s_date.substr(s_date.length-2); if (!delimiter) delimiter = "-"; var aValue = [this.year,s_month,s_date]; return aValue.join(delimiter); } } function getDateTime(){ //alert(c.getDate()+' '+m.getTime()); gdCtrl.value = c.getDate()+' '+m.getTime(); } var gdCtrl = new Object(); function showCal(popCtrl){ gdCtrl = popCtrl; event.cancelBubble=true; //alert(popCtrl); var point = fGetXY(popCtrl); //alert(point.x); //var point = new Point(100,100); //alert(gdCtrl.value); var gdValue=gdCtrl.value; var i_year,i_month,i_day,i_hour,i_minute; if(gdCtrl.value!="" && validateDate1(gdCtrl.value,'yyyy-MM-dd HH:mm')){ i_year=gdValue.substr(0,4); if(gdValue.substr(5,1)=="0"){ i_month=parseInt(gdValue.substr(6,1)); }else{ i_month=parseInt(gdValue.substr(5,2)); } if(gdValue.substr(8,1)=="0"){ i_day=parseInt(gdValue.substr(9,1)); }else{ i_day=parseInt(gdValue.substr(8,2)); } i_hour1=gdValue.substr(11,2); i_minute=gdValue.substr(14,2); //alert(i_hour1+"aaa"); //alert(i_minute); document.getElementById(c.fName+"_year").value = i_year; document.getElementById(c.fName+"_month").value= i_month; //document.getElementById(c.fName+"_date").value = i_day; c.date=i_day; document.getElementsByName(m.fName)[0].value=i_hour1; document.getElementsByName(m.fName)[1].value=i_minute; c.redrawDate(); } //c.month= with (dateTime.style) { left = point.x; top = point.y+popCtrl.offsetHeight+1; width = dateTime.offsetWidth; height = dateTime.offsetHeight; //fToggleTags(point); visibility = 'visible'; } dateTime.focus(); } function Point(iX, iY){ this.x = iX; this.y = iY; } function validateDate1(date,format){ var time=date; if(time=="") return; var reg=format; var reg=reg.replace(/yyyy/,"[0-9]{4}"); var reg=reg.replace(/yy/,"[0-9]{2}"); var reg=reg.replace(/MM/,"((0[1-9])|1[0-2])"); var reg=reg.replace(/M/,"(([1-9])|1[0-2])"); var reg=reg.replace(/dd/,"((0[1-9])|([1-2][0-9])|30|31)"); var reg=reg.replace(/d/,"([1-9]|[1-2][0-9]|30|31))"); var reg=reg.replace(/HH/,"(([0-1][0-9])|20|21|22|23)"); var reg=reg.replace(/H/,"([0-9]|1[0-9]|20|21|22|23)"); var reg=reg.replace(/mm/,"([0-5][0-9])"); var reg=reg.replace(/m/,"([0-9]|([1-5][0-9]))"); var reg=reg.replace(/ss/,"([0-5][0-9])"); var reg=reg.replace(/s/,"([0-9]|([1-5][0-9]))"); reg=new RegExp("^"+reg+"$"); if(reg.test(time)==false){//验证格式是否合法 //alert(alt); //date.focus(); return false; } return true; } function fGetXY(aTag){ var oTmp=aTag; var pt = new Point(0,0); do { pt.x += oTmp.offsetLeft; pt.y += oTmp.offsetTop; oTmp = oTmp.offsetParent; } while(oTmp.tagName!="BODY"); return pt; } function hideCalendar(){ dateTime.style.visibility = "hidden"; /*for (i in goSelectTag) //????????,goSelectTag???? goSelectTag[i].style.visibility = "visible"; goSelectTag.length = 0;*/ } 点击弹出时间框:
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn