首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js日期时间控件,小弟我有一个例子,但功能不能实现

2012-04-30 
求一个js日期时间控件,我有一个例子,但功能不能实现一下是我的例子,要实现的功能是通过前面的select可以控

求一个js日期时间控件,我有一个例子,但功能不能实现
一下是我的例子,要实现的功能是通过前面的select可以控制后面的js时间控件,根据select的值显示在<input>中,比如选择一周,那么开始时间就是从当前时间向前推一周,结束时间就是当前时间,
<input>中是一个js时间控件
<script type="text/javascript" src="include/new_aeroncalendar.js"></script>
<form>
  <select name="time">
  <option value="1">一周</option>
  <option value="1">一个月</option>
  <option value="1">三个月</option>
  <option value="1">半年</option>
  <option value="1">一年</option>
  </select>
  <input type="text" id="endtime" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')" value="开始时间"/>
  <input type="text" id="endtime" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')" value="结束时间"/>
</form>

[解决办法]
这个可以自己写,不需要什么控件。在select中加个onchange事件控制,<select name="time" onchange="addBeginEnd()">
select change时,用当前时间加上选取的时间,赋值给 两个input
[解决办法]

HTML code
<!DOCTYPE HTML><html>    <head>        <meta charset="gb2312" />        <title></title>            <style>            input { width:200px; }        </style>            </head>    <body>        <select id="time">            <option value="0">请选择</option>            <option value="1">一周</option>            <option value="2">一个月</option>            <option value="3">三个月</option>            <option value="4">半年</option>            <option value="5">一年</option>        </select>        <input type="text" id="stime" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')" value="开始时间"/>        <input type="text" id="etime" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')" value="结束时间"/>                <script>            function $(el){                return typeof el == 'string' ? document.getElementById(el) : el;            }            var s = $('stime');            var e = $('etime');            $('time').onchange = function(){                var d = new Date();                e.value = d.toLocaleString().replace(/年|月/g, '-').replace('日', '');                switch( +this.value ){                    case 1:                        s.value = setTime(d, {type:'d', value: -7});                        break;                    case 2:                        s.value = setTime(d, {type:'M', value: -1});                        break;                    case 3:                        s.value = setTime(d, {type:'M', value: -3});                        break;                    case 4:                        s.value = setTime(d, {type:'M', value: -6});                        break;                    case 5:                        s.value = setTime(d, {type:'y', value: -1});                        break;                }            }                        function setTime(d, opts){                if(!d) return;                var t = opts.type || 'd',                    v = opts.value || 1;                switch( t ){                    case 'y':                        d.setFullYear( d.getFullYear() + v );                        break;                    case 'M':                        d.setMonth( d.getMonth() + v );                        break;                                            case 'd':                        d.setDate( d.getDate() + v );                        break;                    case 'h':                        d.setHours( d.getHours() + v );                        break;                    case 'm':                        d.setMinutes( d.getMinutes() + v );                        break;                    case 's':                        d.setSeconds( d.getSeconds() + v );                        break;                                        }                return d.toLocaleString().replace(/年|月/g, '-').replace('日', '');            }                    </script>    </body></html> 

热点排行