<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
<html xmlns="http://www.w3.org/1999/xhtml
">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>月日级联菜单</title>
</head>
<script language="javascript">
function $(id) {return document.getElementById(id);}
function $value(id) {return document.getElementById(id).value;}
function StringToDate(DateStr)
{
var converted = Date.parse(DateStr);
var myDate = new Date(converted);
if (isNaN(myDate))
{
var arys= DateStr.split('-');
myDate = new Date(arys[0],arys[1],arys[2]);
}
return myDate;
}
function ConverDay(year,month,day) // 按月转换日
{
var subitem=$(day);
subitem.innerHTML='';
var year=$value(year);
var date=new Date();
if (year=="") year=""+date.getYear();
var month=$value(month);
var monthday=""+parseInt(month)-1;
var date1=StringToDate(year+"-"+monthday+"-01");
var date2=StringToDate(year+"-"+month+"-01");
var days=((date2-date1)/86400000);
for (i=1;i<=days; i++)
{
var opt=document.createElement("OPTION");
opt.text=i;
opt.value=i;
try{
subitem.add(opt);
} catch(e) {
subitem.add(opt, null);
}
}
}
function monthInit(month,day){//月日初始化
month=$(month)
for (i=1;i<=12; i++)
{
var opt=document.createElement("OPTION");
opt.text=i;
opt.value=i;
try{
month.add(opt);
} catch(e) {
month.add(opt, null);
}
}
day=$(day)
for (i=1;i<=31; i++)
{
var opt=document.createElement("OPTION");
opt.text=i;
opt.value=i;
try{
day.add(opt);
} catch(e) {
day.add(opt, null);
}
}
}
function selectDay(DayItem,Day){//选择中月或日
DayItem=$(DayItem)
for (i=0;i<DayItem.options.length;i++){
if (DayItem.options[i].value==Day){
DayItem.options[i].selected=true;
}
}
}
function bluryear(yy,mm,dd){
var year=$(yy)
if (year.value.length>0){
y=parseInt(year.value);
if(y<=1800||y>=2200){
alert("请正确输入年份!");
year.value="";
year.focus();
return false;
}
}
ConverDay(yy,mm,dd)
}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
<input name="year" type="text" id="year" style="height:14px"
size="4" maxlength="4" onblur="bluryear('year','month','day')"
onKeyPress="return
event.keyCode>=48&&event.keyCode<=57"/>
年
<select name="month" id="month" onchange="ConverDay('year','month','day')">
</select>
月
<select name="day" id="day">
</select>
日
</form>
<script>monthInit("month","day");</script>
</body>
</html>
来自:http://hi.baidu.com/ahwyb/blog/item/2ef50a08d434bf940b7b824d.html
分享到:
相关推荐
JavaScript 日期联动选择器
js关于日期联动的代码 使用js动态添加。
年月日 日期联动 简单容易理解 判断年和月 决定 日 取得的天书
JS年月日三级联动下拉框日期选择代码,默认当前日期,代码附带详细中文注释,供大家参考。
javascript 日期联动选择器,简单的看了下代码非常不错,都考虑到了标准,兼容性也不错。学习js的朋友有福了。
主要介绍了js实现的日期联动效果,调试需加入jquery文件,需要的朋友可以参考下
JS下拉框多级联动--出生日期和世界各国
日期选择三级联动,滑动选择,PC、H5适配;点击输入框 → 页面正中淡入日期选择框 → 滑动选择日期 → 确定,日期回显,弹层淡出页面 → 取消选择,弹层淡出页面
月份的判定,由于涉及到过多了判定条件,如果用if else会大大降低性能,建议用switch 语法 代码如下: 代码如下: getDays:function(year,month){ // var aDay = [31,28|29,31,30,31,30,31,31,30,31,30,31];...
JS年月日三级联动下拉框日期选择代码
基于javascript bootstrap实现生日日期联动选择_.docx
很实用的年月日的三级联动,并且也很简单。
jQuery日期三级联动,包含js和示例页面。可通过下拉框选择生日等日期。
主要介绍了基于javascript bootstrap实现生日日期联动选择的相关资料,需要的朋友可以参考下
下拉列表联动 省市 日期 应有尽有,为了大家方便 拿出来分享 /* PCAS (Province City Area Selector 省、市、地区联动选择JS封装类) Ver 2.02 完整版 *\ 制作时间:2005-12-30 更新时间:2006-01-24 数据修正...