下拉列表问题

czh6363 2003-09-13 05:37:43
如何将分别在下拉表中输入的年月日合成一个日期,如何动态给下拉列表赋值
...全文
48 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanghr100 2003-12-09
  • 打赏
  • 举报
回复
在阿信的代码上加了年月日合成日期

ymd.htm

<html>
<head>
<title>年月日三下拉框联动</title>
<meta http-equiv='Content-Type' content='text/html; charset=gb2312'>
<meta name='author' content='F.R.Huang(meizz梅花雨)//www.meizz.com'>
</head>

<body>
<form name=form1>
<select name=YYYY onchange="YYYYMM(this.value)">
<option value="">请选择 年</option>
</select>
<select name=MM onchange="MMDD(this.value)">
<option value="">选择 月</option>
</select>
<select name=DD>
<option value="">选择 日</option>
</select>
</form>

<script language="JavaScript"><!--
function window.onload()
{
strYYYY = document.form1.YYYY.outerHTML;
strMM = document.form1.MM.outerHTML;
strDD = document.form1.DD.outerHTML;
MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

//先给年下拉框赋内容
var y = new Date().getFullYear();
var str = strYYYY.substring(0, strYYYY.length - 9);
for (var i = (y-30); i < (y+30); i++) //以今年为准,前30年,后30年
{
str += "<option value='" + i + "'> " + i + " 年" + "</option>\r\n";
}
document.form1.YYYY.outerHTML = str +"</select>";

//赋月份的下拉框
var str = strMM.substring(0, strMM.length - 9);
for (var i = 1; i < 13; i++)
{
str += "<option value='" + i + "'> " + i + " 月" + "</option>\r\n";
}
document.form1.MM.outerHTML = str +"</select>";

document.form1.YYYY.value = y;
document.form1.MM.value = new Date().getMonth() + 1;
var n = MonHead[new Date().getMonth()];
if (new Date().getMonth() ==1 && IsPinYear(YYYYvalue)) n++;
writeDay(n); //赋日期下拉框
document.form1.DD.value = new Date().getDate();
}
function YYYYMM(str) //年发生变化时日期发生变化(主要是判断闰平年)
{
var MMvalue = document.form1.MM.options[document.form1.MM.selectedIndex].value;
if (MMvalue == ""){DD.outerHTML = strDD; return;}
var n = MonHead[MMvalue - 1];
if (MMvalue ==2 && IsPinYear(str)) n++;
writeDay(n)
}
function MMDD(str) //月发生变化时日期联动
{
var YYYYvalue = document.form1.YYYY.options[document.form1.YYYY.selectedIndex].value;
if (str == ""){DD.outerHTML = strDD; return;}
var n = MonHead[str - 1];
if (str ==2 && IsPinYear(YYYYvalue)) n++;
writeDay(n)
}
function writeDay(n) //据条件写日期的下拉框
{
var s = strDD.substring(0, strDD.length - 9);
for (var i=1; i<(n+1); i++)
s += "<option value='" + i + "'> " + i + " 日" + "</option>\r\n";
document.form1.DD.outerHTML = s +"</select>";
}
function IsPinYear(year)//判断是否闰平年
{ return(0 == year%4 && (year%100 !=0 || year%400 == 0))}
//--></script>

<br><input type=button onClick="alert(document.all.YYYY.value+'年'+document.all.MM.value+'月'+document.all.DD.value+'日')" value="你选的日期">

<p align="right"><a href="http://fason.nease.net">【阿信的小天地】</a></p>
</body>
</html>
wanghr100 2003-12-09
  • 打赏
  • 举报
回复
年月日连动下拉框.
http://fason.nease.net/code/form/select/ymd.htm

如果要合成,只要取得三个的值连起来就行了啦.
超级大笨狼 2003-12-07
  • 打赏
  • 举报
回复
我马上要升两星了,还差一百分,估计是明天
升完后我也要忙工作了
不能再沉迷在这里了
哎,舍不得这里给我这样的快乐和成就感!
今天拼命做了一个四级连动完美版,access数据库,速度非常快!!!
两个小文件总共代码一共不超过80行!9万条记录运行如飞!!
哈哈,终于完成,我做的
http://expert.csdn.net/Expert/topic/2537/2537402.xml?temp=.5528223
yzwxjun 2003-09-15
  • 打赏
  • 举报
回复
年[selectIndex].outText+月[selectIndex].outText+日[selectIndex].outText
rongwenfeng 2003-09-15
  • 打赏
  • 举报
回复
年[selectIndex].outText+月[selectIndex].outText+日[selectIndex].outText
rongwenfeng 2003-09-15
  • 打赏
  • 举报
回复
年的下拉表单的值+月的下拉表单的值+日的下拉表单的值就可以了啊
itcoco 2003-09-14
  • 打赏
  • 举报
回复
用脚本 取出各个值用连字符连起来
动态给下拉列表赋值你想怎么的显示法?是想用asp或jsp等动态显示数据库中的值么?
czh6363 2003-09-14
  • 打赏
  • 举报
回复
itcoco(无忧草):谢谢你!

怎么连起来做为一个日期值,给我个例子好吗
czh6363 2003-09-14
  • 打赏
  • 举报
回复
itcoco(无忧草):谢谢你!

用jsp动态显示数据库中的值,怎么做,谢谢回答,一定给分

61,112

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧