您的位置:首页 > Web前端 > JavaScript

js 是实现网页日期控件

2009-07-03 14:18 357 查看
var calenderMonth = 0; function JCalendar(year, month, date) { var _date = arguments.length == 0 ? new Date() : new Date(year, month - 1, date); this.year = _date.getFullYear(); this.month = _date.getMonth() + 1; this.fday = new Date(this.year, this.month - 1, 1).getDay(); this.dayNum = new Date(this.year, this.month, 0).getDate(); JCalendar.cur_year = this.year; JCalendar.cur_month = this.month; JCalendar.cur_date = _date.getDate(); } JCalendar.prototype.show = function() { var date = new Array(this.fday > 0 ? this.day: 0); var html_str = new Array(); var date_index = 0; var weekDay = ["日", "一", "二", "三", "四", "五", "六"]; for (var j = 1; j <= this.dayNum; j++) { date.push(j); } html_str.push("

"); html_str.push("


" + "" + "


"); html_str.push(""); for (var i = 0; i < 7; i++) { html_str.push(""); } html_str.push(""); for (var i = 0; i < 6; i++) { html_str.push(""); for (var j = 0; j < 7; j++) { tmp = date[date_index++]; tmp = tmp ? tmp: ""; if (JCalendar.cur_date == tmp) { html_str.push("
" + JCalendar.cur_date + "
"); } else if (tmp == "") { html_str.push(" "); } else { html_str.push("" + tmp + ""); } } html_str.push(""); } html_str.push("
"); return html_str.join(""); }; JCalendar.update = function(_month) { calenderMonth = _month; var date = new Date(JCalendar.cur_year, JCalendar.cur_month - 1 + _month, 1); var fday = date.getDay(); var year = date.getFullYear(); var month = date.getMonth() + 1; var dayNum = new Date(JCalendar.cur_year, JCalendar.cur_month + _month, 0).getDate(); var tds = document.getElementById("calendar").getElementsByTagName("dd"); for (var i = 7; i < tds.length; i++) { tds[i].innerHTML = ""; tds[i].className = "none"; }; var my_calendar_month = ""; for (var m = 1; m < 13; m++) { my_calendar_month = my_calendar_month + "date.getFullYear() - 10; y--) { my_calendar_year = my_calendar_year + "" + j + ""; tds[6 + fday + j].className = ""; } JCalendar.onupdate(year, month, JCalendar.cur_date); }; JCalendar.onupdate = function(year, month, date) { if (calenderMonth != 0) { /**/ } }; JCalendar.click = function(obj) { var tmp = document.getElementById("cal_today"); tmp.parentNode.innerHTML = "" + tmp.innerHTML + ""; JCalendar.cur_date = parseInt(obj.innerHTML); obj.innerHTML = "" + obj.innerHTML + ""; JCalendar.onclick(JCalendar.cur_year, JCalendar.cur_month, JCalendar.cur_date); }; JCalendar.onclick = function(year, month, date) { /*点击日期时执行的函数,可以更改为自己需要函数,控件传递过来的参数为当前日期*/ alert("您选择的是" + year + "年" + month + "月" + date + "日,改时执行的函数,可以更改为自己需要函数,请修改js文件"); }; function showcalendar() { document.getElementById('calendardiv').style.display = ''; document.getElementById('calendardiv').innerHTML = new JCalendar().show(); JCalendar.update(0); }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: