js实现一个日期联动下拉菜单
作者:Qihontin 发布时间:2007-08-04 20:49:00
内容摘要:这篇文章的主旨是弄清楚如何根据实际需求实现一个联动菜单以及联动菜单的原理,实例是实现一个日期选择下拉菜单。
首先来分析一下日期下拉菜单的需求。建议大家在写任何程序的时候都应该在动手编程之前想清楚自己需要些什么,这样编程才有效率。本文调试环境为IE6/firefox1.5。
年份: 一般来说有一个有效年份,比如说1900年至当前年份才是为效的,这个要根据实际需求来确定,如果是该下拉菜单是用来选择出生年月日还得把最大的年份减到一定的数目,如果有人的生日选择了2005年(即当前的年份),那是不正常的。
月份:没有什么特殊需求,不管是哪一年都是有十二个月。
天数:每个月的天数都可能是不定的,当然这可以根据一定的算法求出来,而它的根据就是当前选择的年份和月份。月份都有一个固定的天数,即一、三、五、七、八、十、十二月是三十一天,而四、六、九、十一月是三十天,二月份要根据当年是否为闰年判断是二十八天还是二十九天。求当月的天数我提出一个比较简单的算法,可以只根据当前的年份和月份就可以求出当月的天数,这会在后边讲一讲思路并将其实现。
好了,现在我们来具体实现这个日期联动下拉菜单。
联动下拉菜单是以两个或多个select元素为单位的,为了让这些菜单更多紧密的工作,我们可以实现一个类用来管理它们的初始化、事件,在这里就使用DateSelector为类名,它有三个属性,分别为年、月、日的下拉菜单,而这三个select元素是由构造函数的参数传进来的,另外为了更灵活地使用它,我们还可以再给DateSelector类的构造函数增加一个(Date对象)或三个参数(int数值),表示初始化的年月日。由于参数个数不定,我们可以不将另外增加的参数写入参数表里,而是在运行时判断arguments对象的length属性来执行不同的操作。arguments对象存储了当前函数的参数信息,可以查阅一下相关的资料比如说《Windows脚本技术》。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>如何实现一个日期下拉菜单</title>
<script type="text/javascript">
function DateSelector(selYear, selMonth, selDay)
{
this.selYear = selYear;
this.selMonth = selMonth;
this.selDay = selDay;
}
</script>
</head>
<body>
</body>
</html>
猜你喜欢
- HTML5本地存储初探(二)完成了数据的本地存储,就要将文件存储也搞定。为了实现文件的本地存储,html5搞了一个叫 manifest 的文
- MySQL存储过程SAVEPOINT ROLLBACK to示例如下:DELIMITER $$DROP PROCEDURE IF EXIST
- 1.建表代码如下:-- Create table create table test ( dm1 char(3), dm2 char(3),
- 这篇论坛文章主要介绍了Oracle数据库到SQL Server数据库主键的迁移过程,具体内容请参考下文。由于项目需要要将以前Oracle的数
- 看到别人用td和table标签模拟的办法: 设置table的上、左padding
- 1、我的第一个个人主页一打开就是一张很眩的图片,图片上有个“进入”,点击后才算真正看到我的主页。现在回想起来那个时候这样做,大概是很想迅速展
- 如果要得到返回值,需要用Command的方法。 首先说明,返回值有两种。一种是在存储过程中直接return一个值,就象C和VB的函数返回值那
- 一、IE透明度问题在IE的高度超过某一阀值时,会产生透明度不时失效的问题,这现象比较奇怪,(会有的时候全黑,有的时候全白)你有可能无法复现。
- 下面的request.servervariables例子都是服务器探针采用的asp代码本机ip:<%=request.serverva
- SQL Server 2005数据库中增加了XML类型,在创建表的时候可以指定某一列为XML类型,示例如下:CREATE TABL
- 一个网站信息结构需要表现给用户看,这样用户才能知道当前是在哪儿,才有可能去猜测某个内容可能会在哪儿。如何表现网站的信息结构给用户呢?用导航。
- 刚才运行了一段代码,来查看Request.ServerVariables里面有多少值,看了一下,共50个!代码<%=Request.S
- 远程(如通过互联网)连接access数据库的示例:首先,需要使用TCP/IP,ADO及XML(需要安装Microsoft XML 4.0。)
- 黑体是视觉设计师常用的一款字体,特别是针对广告的 Banner 等。根据 * 的相关介绍,有关黑体的定义可以认为:黑體与白体
- 如何制作一个股票滚屏显示面板?<html> <head> <script
- IE(internet explorer)公司:微软(MicroSoft)布局引擎:Trident(也做MSHTML)注:解析渲染
- 几个常用的js小函数,在表单验证时也许您用得到:一检查是否是email地址,二检查是否为数字,三检查是否为电话号码,四检查num是否是负数或
- 以下是通过Excel 的VBA连接Oracle并操作Oracle相关数据的示例Excel 通过VBA连接数据库需要安装相应的Oracle客户
- 今天帮助同事解决一个问题,问题是她做的一套页面在FF下显示正常,在IE6下样式却没有效果,也就是没有应用样式。最终发现是编码不匹配的问题,c
- 如今,基本每个网站都会需要到Tab切换展示内容的滑动门效果应用,这种效果可以在更少的页面空间内,展示更多的网站内容,节约空间,方便用户集中操