`
- 浏览:
7041017 次
- 性别:
- 来自:
上海
-
-
<html>
-
<head>
-
<title>calenderselect</title>
-
<metahttp-equiv="Content-Type"content="text/html;charset=ISO-8859-1"/>
-
<styletype='text/css'>
- body{
- font-family:"Lucidasansunicode",sans-serif;
- font-size:12px;
- margin:0;
- padding:0;
- height:100%;
- }
- #basis{
- display:inline;
- position:relative;
- }
- #calender{
- position:absolute;
- top:30px;
- left:0;
- width:220px;
- background-color:#fff;
- border:3pxsolid#ccc;
- padding:10px;
- z-index:10;
- }
- #control{
- text-align:center;
- margin:005px0;
- }
- #controlselect{
- font-family:"Lucidasansunicode",sans-serif;
- font-size:11px;
- margin:05px;
- vertical-align:middle;
- }
- #calender.controlPlus{
- padding:05px;
- text-decoration:none;
- color:#333;
- }
- #calendertable{
- empty-cells:show;
- width:100%;
- font-size:11px;
- table-layout:fixed;
- }
- #calender.weekdaystd{
- text-align:right;
- padding:1px5px1px1px;
- color:#333;
- }
- #calender.weektd{
- text-align:right;
- cursor:pointer;
- border:1pxsolid#fff;
- padding:1px4px1px0;
- }
- #calender.week.today{
- background-color:#ccf;
- border-color:#ccf;
- }
- #calender.week.holiday{
- font-weight:bold;
- }
- #calender.week.hoverEle{
- border-color:#666;
- background-color:#99f;
- color:#000;
- }
-
</style>
-
<scripttype="text/javascript">
-
varallMonth=[31,28,31,30,31,30,31,31,30,31,30,31];
-
varallNameOfWeekDays=["Mo","Di","Mi","Do","Fr","Sa","So"];
-
varallNameOfMonths=["Januar","Februar","M?rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"];
-
varnewnewDate=newDate();
-
varyearZero=newDate.getFullYear();
-
varmonthZero=newDate.getMonth();
-
varday=newDate.getDate();
-
varcurrentDay=0,currentDayZero=0;
-
varmonth=monthZero,year=yearZero;
-
varyearMin=2000,yearMax=2010;
-
vartarget='';
-
varhoverEle=false;
- functionsetTarget(e){
- if(e)returne.target;
- if(event)returnevent.srcElement;
- }
- functionnewElement(type,attrs,content,toNode){
-
varele=document.createElement(type);
- if(attrs){
-
for(vari=0;i<attrs.length;i++){
- eval('ele.'+attrs[i][0]+(attrs[i][2]?'=\u0027':'=')+attrs[i][1]+(attrs[i][2]?'\u0027':''));
- }
- }
- if(content)ele.appendChild(document.createTextNode(content));
- if(toNode)toNode.appendChild(ele);
- returnele;
- }
-
functionsetMonth(ele){month=parseInt(ele.value);calender()}
-
functionsetYear(ele){year=parseInt(ele.value);calender()}
- functionsetValue(ele){
-
if(ele.parentNode.className=='week'&&ele.firstChild){
-
vardayOut=ele.firstChild.nodeValue;
-
if(dayOut<10)dayOut='0'+dayOut;
-
varmonthmonthOut=month+1;
-
if(monthOut<10)monthOut='0'+monthOut;
-
target.value=dayOut+'.'+monthOut+'.'+year;
- removeCalender();
- }
- }
- functionremoveCalender(){
-
varparentEle=document.getElementById("calender");
- while(parentEle.firstChild)parentEle.removeChild(parentEle.firstChild);
- document.getElementById('basis').parentNode.removeChild(document.getElementById('basis'));
- }
- functioncalender(){
-
varparentEle=document.getElementById("calender");
-
parentEle.onmouseover=function(e){
-
varele=setTarget(e);
-
if(ele.parentNode.className=='week'&&ele.firstChild&&ele!=hoverEle){
-
if(hoverEle)hoverElehoverEle.className=hoverEle.className.replace(/hoverEle?/,'');
-
hoverEle=ele;
-
ele.className='hoverEle'+ele.className;
- }else{
- if(hoverEle){
-
hoverElehoverEle.className=hoverEle.className.replace(/hoverEle?/,'');
-
hoverEle=false;
- }
- }
- }
- while(parentEle.firstChild)parentEle.removeChild(parentEle.firstChild);
- functioncheck(){
-
if(year%4==0&&(year%100!=0||year%400==0))allMonth[1]=29;
- elseallMonth[1]=28;
- }
-
functionaddClass(name){if(!currentClass){currentClass=name}else{currentClass+=''+name}};
-
if(month<0){month+=12;year-=1}
-
if(month>11){month-=12;year+=1}
-
if(year==yearMax-1)yearMax+=1;
-
if(year==yearMin)yearMin-=1;
- check();
-
varcontrol=newElement('p',[['id','control',1]],false,parentEle);
-
varcontrolPlus=newElement('a',[['href','javascript:month--;calender()',1],['className','controlPlus',1]],'<',control);
-
varselect=newElement('select',[['onchange',function(){setMonth(this)}]],false,control);
-
for(vari=0;i<allNameOfMonths.length;i++)newElement('option',[['value',i,1]],allNameOfMonths[i],select);
-
select.selectedIndex=month;
-
select=newElement('select',[['onchange',function(){setYear(this)}]],false,control);
-
for(vari=yearMin;i<yearMax;i++)newElement('option',[['value',i,1]],i,select);
-
select.selectedIndex=year-yearMin;
-
controlPlus=newElement('a',[['href','javascript:month++;calender()',1],['className','controlPlus',1]],'>',control);
- check();
-
currentDay=1-newDate(year,month,1).getDay();
-
if(currentDay>0)currentDay-=7;
-
currentDaycurrentDayZero=currentDay;
-
varnewMonth=newElement('table',[['cellSpacing',0,1],['onclick',function(e){setValue(setTarget(e))}]],false,parentEle);
-
varnewMonthBody=newElement('tbody',false,false,newMonth);
-
vartr=newElement('tr',[['className','head',1]],false,newMonthBody);
-
tr=newElement('tr',[['className','weekdays',1]],false,newMonthBody);
-
for(i=0;i<7;i++)td=newElement('td',false,allNameOfWeekDays[i],tr);
-
tr=newElement('tr',[['className','week',1]],false,newMonthBody);
-
for(i=0;i<allMonth[month]-currentDayZero;i++){
-
varcurrentClass=false;
- currentDay++;
-
if(currentDay==day&&month==monthZero&&year==yearZero)addClass('today');
-
if(currentDay<=0){
-
if(currentDayZero!=-7)td=newElement('td',false,false,tr);
- }
- else{
-
if((currentDay-currentDayZero)%7==0)addClass('holiday');
-
td=newElement('td',(!currentClass?false:[['className',currentClass,1]]),currentDay,tr);
-
if((currentDay-currentDayZero)%7==0)tr=newElement('tr',[['className','week',1]],false,newMonthBody);
- }
-
if(i==allMonth[month]-currentDayZero-1){
- i++;
-
while(i%7!=0){i++;td=newElement('td',false,false,tr)};
- }
- }
- }
- functionshowCalender(ele){
- if(document.getElementById('basis')){removeCalender()}
- else{
-
target=document.getElementById(ele.id.replace(/for_/,''));
-
varbasis=ele.parentNode.insertBefore(document.createElement('div'),ele);
-
basis.id='basis';
- newElement('div',[['id','calender',1]],false,basis);
- calender();
- }
- }
-
</script>
-
</head>
-
<body>
-
<div><inputtype='text'id='date1'/><inputtype='button'id='for_date1'value='date'onclick='showCalender(this)'/></div>
-
<p>sometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometextsometext</p>
-
<div><inputtype='text'id='date2'/><inputtype='button'id='for_date2'value='date'onclick='showCalender(this)'/></div>
-
<pid='output'></p>
-
</body>
-
</html>
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
一些流行的JavaScript日期选择库包括 jQuery UI 的 Datepicker、Bootstrap 的 Datepicker、以及 Moment.js 配合 Pickadate.js 等。 1. **jQuery UI Datepicker**: 这是一个广泛使用的日期选择控件,支持多种语言,...
在网页中,我们经常需要与用户进行日期相关的交互,例如选择日期、设定日期范围等,这时JavaScript日期选择控件就显得尤为重要。Kalendae是一款强大的JavaScript库,专门用于创建日期选择功能,其源码的分析有助于...
总之,My97DatePicker 是一个强大且实用的JavaScript日期选择控件,它为开发者提供了丰富的功能和高度的定制性,是网页前端开发中的得力工具。无论是个人项目还是企业级应用,它都能满足多样化的日期输入需求,提升...
选择日期控件(js封装类,javascript,选择日期,文本框选择日期,控件)
JavaScript日期控件是一种常见的网页交互元素,用于帮助用户在网页上方便地选择日期。这篇博客“JavaScript日期控件02(日期选择器)”可能是博主FantasyYong分享的一个关于自定义日期选择器的实现方法。日期控件在...
"漂亮JavaScript弹出选择日期控件"就是这样一个实用工具,它能够提供美观且用户友好的日期选择界面。 首先,我们来看看"testdate.htm"这个文件,这通常是一个HTML页面,包含了日期控件的使用示例。在HTML中,我们...
- Bootstrap DateTimePicker:这是基于Bootstrap框架的日期和时间选择插件,不仅支持日期选择,还支持时间选择。使用时,需要引入Bootstrap、moment.js和datetimepicker插件的CSS和JS文件,然后通过附加类名或...
JavaScript日期选择插件是网页开发中常用的一种工具,主要用于用户在网页上方便地选取日期,常见于表单输入、事件预约或日历功能等场景。本文将深入探讨基于JavaScript的日期选择控件及其核心概念。 首先,让我们...
JavaScript日期控件是一种常见的前端开发元素,用于在网页上提供日期选择功能,用户可以方便地选取日期,常用于表单填写、事件安排等场景。在这个案例中,我们关注的是一个名为"JavaScript日期控件01(日期选择器)...
总结来说,"Asp日期控件"中的"My97DatePicker"是一个强大且易用的JavaScript日期选择插件,适用于ASP开发环境。它提供了多种日期选择模式,支持自定义样式和功能扩展,是构建交互式Web应用时的一个理想选择。通过...
创建多选日期控件的关键在于设置允许选择多个日期的选项。在上述的Bootstrap Datepicker示例中,我们通过`multipleDates: true`参数实现了这一功能。用户可以选择并显示多个日期,这些日期会存储在输入框的值中,以...
总之,JavaScript日期时间控件是一个复杂但实用的Web组件,它利用JavaScript的日期功能结合用户交互设计,为用户提供了一种在网页中选择日期和时间的便捷方式。通过分析"datescript.js",我们可以深入理解其背后的...
JavaScript日期时间选择控件是一种常见的前端开发工具,用于在网页上提供用户友好的日期和时间输入界面。在网页设计中,这种控件可以极大提升用户体验,因为它允许用户通过直观的日历视图和时间选择器来设定日期和...
JavaScript经典日期控件,如标题所述,是一种基于JavaScript编写的用于网页交互的日期选择组件,它使得用户在网页上能够方便地选取日期。这个控件的版本为My97DatePicker3.0.1,通常这类控件会提供丰富的功能和良好...
之前我们介绍过很多基于jQuery的日期选择控件和基于HTML5的日期选择控件,比如JavaScript日期选择控件Kalendae和HTML5/CSS3日历应用 华丽的日期选择器。这次要介绍的日期选择控件是基于Bootstrap风格的,可支持多种...
JavaScript日期控件因其轻量级、灵活性和易于集成的特点,在Web开发中被广泛使用。本篇将深入探讨JavaScript日期控件,包括其基本原理、使用方法以及如何与jQuery库结合,同时也将提及压缩包中的相关资源。 一、...
总的来说,MY97 WdatePicker 是一个强大且灵活的JavaScript日期控件,它的广泛应用证明了其在网页开发中的实用性。通过深入学习和实践,开发者可以充分利用这个工具,为用户提供更优质的日期输入体验。在压缩包...