- 浏览: 127510 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (145)
- java (145)
- Java网络编程 (1)
- SWT 文本框Text通过GC重绘改变边框颜色 (1)
- tomcat部署web工程的两种方法 (1)
- JAX-RS 从傻逼到牛叉 1:REST 基础知识 (1)
- FreyjaJdbcTemplate 大致上完工了,想请人重构。。 (1)
- 开始认识自己 (1)
- 设计模式-Abstract Factory 模式 (1)
- 数据库中主键的设计原则 (1)
- JNI中jstring类型与c语言中的字符串的转换 (1)
- mac环境变量 (1)
- STC单片机ADC转换的例子 (1)
- myeclipse 8下安装Ibator . (1)
- OSGI与Android结合 (1)
- CSDN BLOG EXPERT (1)
- Java中网络操作的开源库CommonsNet (1)
- Apache License Version 2.0 英文内容及中文翻译 (1)
- JTest (1)
- GeoCon 用C#编写的开源的地理信息数据转换工具 (1)
- ERP简易教程 (1)
- 提高站点在搜索引擎上的排名 (1)
- Wifi (1)
- 腾讯Q+开放平台,相信又是一次成功的模仿 (1)
- C#坦克大战网络版代码 (1)
- Problem16 (1)
- Ajax 应该变成 Ajaj (关于JSON 与 XML 的比较) (1)
- ava框架数据库连接池比较(c3p0 (1)
- dbcp和proxool)bonecp (1)
- 继续向成熟男人靠拢 (1)
- Qt4.7中 默认的构造函数 (1)
- xml CDATA (1)
- 只针对中英文混合分词的中文分词器 (1)
- 典型相关分析及其适用范围和spss操作(转) (1)
- llvm (1)
- java连接数据库Oracle|DB2|Sql Server|Sybase|Informix|MySQL||PostgreSQL|access (1)
最新评论
-
xm3530:
什么鬼?都没法看,发出来干嘛
Android中利用App实现消息推送机制的代码实例 -
lvtenglongxiaohei:
太经典了!
学习一下!
ERP简易教程 -
lvtenglongxiaohei:
<br> 一天中午,丈 ...
ERP简易教程 -
hzw2312:
加油~~~!!!
开始认识自己 -
123048591:
显示乱码
tomcat部署web工程的两种方法
<style type="text/css">
/**********日历样式开始********************/
#calendar_container {
width: 160px;
border: 1px solid #06c;
}
#calendar {
border-collapse: collapse;
background-color: #fff;
width: 160px;
height: 120px;
margin: 0px auto;
cursor: default;
}
#calendar td {
font-size: 12px;
text-align: center;
vertical-align: middle;
font-family: "宋体";
}
#calendar thead {
background-color: #999;
color: #fff;
}
#calendar caption {
background-color: #06c;
}
#calendar a {
color: #f90;
margin: 0 5px;
text-decoration: none;
}
#calendar #prev_month,#calendar #next_month {
font-size: 18px;
margin: 0;
}
#calendar #c_today {
background-color: #036;
color: #fff;
}
#calendar .over {
background-color: #ccc;
}
#calendar .keydate {
color: #06f;
}
</style>
<script type="text/javascript">
//////////////jcalendar 类////////////////////////////
/***************************
*jcalendar日历控件
*@author brull
*@email [email]brull@163.com[/email]
*@date 2007-4-16
*@更新 2007-5-27
*@version 1.0 beta
***************************/
/*
*@param year 年份,[可选]
*@param month 月份,[可选]
*@param date 日期,[可选]
*或者是以横线间隔开的日期,比如:2007-4-27
*/
function jcalendar (year,month,date) {
if($("calendar"))return;//唯一实例
var _date = null;
if(arguments.length == 3) _date = new date(year,month-1,date);
else if(arguments.length == 1 && typeof arguments[0] == "string")
_date = eval("new date(" + arguments[0].split("-").join() + ")");
//如果没有参数,就初始化为当天日期
else if(arguments.length == 0) _date = new date();
this.year = _date.getfullyear();
this.month = _date.getmonth() + 1;
this.date = _date.getdate();
this.firstyear = 1949;
this.lastyear = 2049;
jcalendar.cur_year = this.year;
jcalendar.cur_month = this.month;
jcalendar.cur_date = this.date;
jcalendar.cur_obj_id = null;//作为输入控件时保存当前文本框的id
}
/**
*设置日历年份下拉菜单的年份范围
*@first 第一个年份界限
*@last 第二个年份界限
*两个参数顺序可以颠倒
*/
jcalendar.prototype.setyears = function(first,last){
if(isnan(first) || isnan(last)) return;
this.firstyear = math.min(first,last);
this.lastyear = math.max(first,last);
}
/**
*以html串返回日历控件的html代码
*/
jcalendar.prototype.tostring = function(){
var fday = new date(this.year,this.month-1,1).getday();//每月第一天的星期数
var select_year = new array();//年份下拉菜单
var select_month = new array();//月份下拉菜单
//日历里的每个单元格的数据,预先定义一段空数组,对应日历里第一周空的位置。[注意星期天对应的数是0]
var date = new array(fday > 0 ? fday - 1 : 0);
var daynum = new date(this.year,this.month,0).getdate();//每月的天数
var html_str = new array();//保存日历控件的html代码
var date_index = 0;//date数组的索引
var weekday = ["日","一","二","三","四","五","六"];
//填充年份下拉菜单
select_year.push("<select id='select_year' style='display:none' onblur =\"hide(this);show('title_year')\" onchange='jcalendar.update(this.value,jcalendar.cur_month)'>");
for(var i = this.firstyear; i <= this.lastyear; i++){
if(i == this.year)
select_year.push("<option value='" + i + "' selected='selected'>" + i +"</option>");
else
select_year.push("<option value='" + i + "'>" + i +"</option>");
}
select_year.push("</select>");
//填充月份下拉菜单
select_month.push("<select id='select_month' style='display:none' onblur =\"hide(this);show('title_month')\" onchange='jcalendar.update(jcalendar.cur_year,this.value)'>");
for(var i = 1; i <= 12; i++){
if(i == this.month)
select_month.push("<option value='" + i + "' selected='selected'>" + i +"月</option>");
else
select_month.push("<option value='" + i + "'>" + i +"月</option>");
}
select_month.push("</select>");
//初始化date数组
for(var j = 1; j <= daynum; j++){
date.push(j);
}
//开始构建日历控件的html代码
html_str.push("<table id='calendar'>");
//日历表格caption
html_str.push("<caption>" + "<a href='#' id='prev_month' title='上一月份' onclick=\"jcalendar.update(jcalendar.cur_year,jcalendar.cur_month-1);return false;\">&laquo;</a><a href='#' id='title_year' title='点击选择年份' onclick=\"hide(this);show('select_year');$('select_year').focus();return false\">" + this.year + "年</a>" + select_year.join("") + "<a href='#' id='title_month' title='点击选择月份' onclick=\"hide(this);show('select_month');$('select_month').focus();return false\">" + this.month + "月</a>" + select_month.join("") + "<a href='#' id='next_month' title='下一月份' onclick=\"jcalendar.update(jcalendar.cur_year,jcalendar.cur_month+1);return false;\">&raquo;</a></caption>");
//日历表格头
html_str.push("<thead><tr>");
for(var i = 0; i < 7; i++){//填充日历头
html_str.push("<td>" + weekday[i] + "</td>");
}
html_str.push("</tr></thead>");
//日历主体
var tmp;
html_str.push("<tbody>");
for(var i = 0; i < 6; i++){//填充日期,6行7列
html_str.push("<tr>");
for(var j = 0; j < 7; j++){
tmp = date[date_index++];
if(!tmp) tmp = "";
html_str.push("<td ");
if(tmp == this.date) html_str.push("id='c_today' ");
html_str.push("onmouseover='jcalendar.over(this)' onmouseout='jcalendar.out(this)' onclick='jcalendar.click(this)'>" + tmp + "</td>");
}
html_str.push("</tr>");
}
html_str.push("</tbody></table>");
return html_str.join("");
}
/**
*特别显示关键天,典型例子博客的日历
* 实现原理,为每个关键天的表格单元添加一个class,名字为keydate,css样式需要自己写,比如加个背景之类的
*@param 日期的数组,比如:[1,4,6,9]
*/
jcalendar.prototype.setkeydate = function(){
var dates = arguments[0];
var tds = $tn("td",$("calendar"));
var reg = null;
for(var i = 0; i < dates.length; i++){
reg = new regexp("\\b" + dates[i] + "\\b");
for(var j = 7; j < tds.length; j++){//忽略表格头
if(reg.test(tds[j].innertext)){
tds[j].classname = "keydate";
break;
}
}
}
}
/**
*可以将日历控件邦定到某个文本框,在点击文本框的时候,会在direction指定的方向弹出日历,可以多次调用来帮定多个文本框
*@ param obj_id 需要邦定日历的文本框的id
*@ param direction 日历出现的相对于文本框的方向 [可选] 默认为right
*/
jcalendar.prototype.bind = function(obj_id,direction){
var obj = $(obj_id);
var direction = direction ? direction : "right";
if(!obj)return;
if(!$("calendar_container")){//唯一容器
var contain = $dc("div");
var s = contain.style;
s.visibility = "hidden";
s.position = "absolute";
s.top = "0px";//不能占据页面空间
s.zindex = 65530;
contain.id = "calendar_container";
contain.innerhtml = this.tostring();
document.body.appendchild(contain);
if(isie){
var ifm = $dc("iframe");
var s = ifm.style;
ifm.frameborder = 0;
ifm.height = (contain.clientheight - 3) + "px";
s.visibility = "inherit";
s.filter = "alpha(opacity=0)";
s.position = "absolute";
s.top = "0px";//不能占据页面空间
s.width = $("calendar_container").offsetwidth;
s.zindex = -1;
contain.insertadjacentelement("afterbegin",ifm);
}
}
//覆盖日历事件
jcalendar.onupdate = function () {};
jcalendar.onclick = function (year,month,date){
$(jcalendar.cur_obj_id).value = $(jcalendar.cur_obj_id).value.replace(/^[^\s]*/i,year + '-' + month + '-' + date);
hide("calendar_container");
}
//邦定事件
document.attachevent("onclick",function(){
if($("calendar_container").style.visibility="visible")hide("calendar_container");
});
obj.attachevent("onclick",function(e){
var obj = e.srcelement;
var dates =obj.value.split(/\s/)[0].split("-");//文本框日期数组,文本框内容可能有时间这样的字串,即:2007-5-26 15:39
var left = obj.offsetleft , top = obj.offsettop;
var x,y,left,top;
var contain = $("calendar_container");
var body = isdtd ? document.documentelement : document.body;
left = body.scrollleft + e.clientx - e.offsetx;
top = body.scrolltop + e.clienty - e.offsety;
switch(direction){
case "right" : x = left + obj.offsetwidth; y = top;break;
case "bottom" : x = left; y = top + obj.offsetheight;break;
}
contain.style.top = y + "px";
contain.style.left = x + "px";
//更新日历日期
if(dates.length == 3 && (jcalendar.cur_year != dates[0] || jcalendar.cur_month != dates[1] || jcalendar.cur_date != dates[2]))
jcalendar.update(dates[0],dates[1],dates[2]);//如果文本框有时间则更新时间到文本框的时间
else if (dates.length != 3){
var now = new date();
jcalendar.update(now.getfullyear(),now.getmonth() + 1,now.getdate());
}
if($("calendar_container").style.visibility="hidden")show("calendar_container");
e.cancelbubble = true;
jcalendar.cur_obj_id = obj.id;
});
$("calendar_container").attachevent("onclick",function(e){e.cancelbubble = true;});
}
/*===========================静态方法=======================================*/
/**
*更新日历内容
*/
jcalendar.update = function(_year,_month,_date){
date = new date(_year,_month-1,1);
var fday = date.getday();//每月第一天的星期数
var year = date.getfullyear();
var month = date.getmonth() + 1;
var daynum = new date(_year,_month,0).getdate();//每月的天数
var tds = $tn("td",$("calendar"));
var years = $("select_year").options;
var months = $("select_month").options;
var _date = _date ? _date : jcalendar.cur_date;
//更新当前年月
jcalendar.cur_year = year;
jcalendar.cur_month = month;
if(_date && _date <= daynum) jcalendar.cur_date = _date;
else if(_date > daynum) jcalendar.cur_date = _date - daynum;
$("title_year").innertext = year + "年";
$("title_month").innertext = month + "月";
//更新年份下拉菜单选中项
for(var i = years.length - 1; i >= 0; i-- ){
if(years[i].value == year){
$("select_year").selectedindex = i;
break;
}
}
//更新月份下拉菜单选中项
for(var i = months.length - 1; i >= 0; i-- ){
if(months[i].value == month){
$("select_month").selectedindex = i;
break;
}
}
//清空日历内容,忽略日历头,即第一行
for(var i = 7; i < tds.length; i++) tds[i].innertext = "";
if( $("c_today"))$("c_today").removeattribute("id");
for(var j = 1; j <= daynum; j++){
tds[6 + fday + j].innertext = j;
if(j == jcalendar.cur_date) tds[6 + fday + j].id = "c_today";
}
jcalendar.onupdate(year,month,jcalendar.cur_date);
}
jcalendar.click = function(obj){
var tmp = $("c_today");
if(tmp && tmp == obj){
jcalendar.onclick(jcalendar.cur_year,jcalendar.cur_month,jcalendar.cur_date);
}
else if(obj.innertext != ""){
if(tmp) tmp.removeattribute("id");
jcalendar.cur_date = parseint(obj.innertext);
obj.id = "c_today";
jcalendar.onclick(jcalendar.cur_year,jcalendar.cur_month,jcalendar.cur_date);
}
}
jcalendar.over = function(obj){
if(obj.innertext != "") obj.classname = "over";
}
jcalendar.out = function(obj){
if(obj.innertext != "") obj.classname = "";
}
//日历更改时执行的函数,可以更改为自己需要函数,控件传递过来的参数为当前日期
jcalendar.onupdate = function(year,month,date){
alert("日历已更改,当前日历日期:" + year + "年" + month + "月" + date + "日");
}
//点击日期时执行的函数,可以更改为自己需要函数,控件传递过来的参数为当前日期
jcalendar.onclick = function(year,month,date){
alert( "当前触发的日期:" + year + "年" + month + "月" + date + "日");
}
var j = new jcalendar();
j.setyears(1990,2020);
j.bind('bdate',"bottom");
var dt=new date();
var y=dt.getfullyear();
var m=dt.getmonth()+1;
if(m<10)
m="0"+m;
var d=dt.getdate();
if(d<10)
d="0"+d;
var sr=y+"-"+m+"-"+d;
document.getelementbyid('bdate').value=sr;
</script>
/**********日历样式开始********************/
#calendar_container {
width: 160px;
border: 1px solid #06c;
}
#calendar {
border-collapse: collapse;
background-color: #fff;
width: 160px;
height: 120px;
margin: 0px auto;
cursor: default;
}
#calendar td {
font-size: 12px;
text-align: center;
vertical-align: middle;
font-family: "宋体";
}
#calendar thead {
background-color: #999;
color: #fff;
}
#calendar caption {
background-color: #06c;
}
#calendar a {
color: #f90;
margin: 0 5px;
text-decoration: none;
}
#calendar #prev_month,#calendar #next_month {
font-size: 18px;
margin: 0;
}
#calendar #c_today {
background-color: #036;
color: #fff;
}
#calendar .over {
background-color: #ccc;
}
#calendar .keydate {
color: #06f;
}
</style>
<script type="text/javascript">
//////////////jcalendar 类////////////////////////////
/***************************
*jcalendar日历控件
*@author brull
*@email [email]brull@163.com[/email]
*@date 2007-4-16
*@更新 2007-5-27
*@version 1.0 beta
***************************/
/*
*@param year 年份,[可选]
*@param month 月份,[可选]
*@param date 日期,[可选]
*或者是以横线间隔开的日期,比如:2007-4-27
*/
function jcalendar (year,month,date) {
if($("calendar"))return;//唯一实例
var _date = null;
if(arguments.length == 3) _date = new date(year,month-1,date);
else if(arguments.length == 1 && typeof arguments[0] == "string")
_date = eval("new date(" + arguments[0].split("-").join() + ")");
//如果没有参数,就初始化为当天日期
else if(arguments.length == 0) _date = new date();
this.year = _date.getfullyear();
this.month = _date.getmonth() + 1;
this.date = _date.getdate();
this.firstyear = 1949;
this.lastyear = 2049;
jcalendar.cur_year = this.year;
jcalendar.cur_month = this.month;
jcalendar.cur_date = this.date;
jcalendar.cur_obj_id = null;//作为输入控件时保存当前文本框的id
}
/**
*设置日历年份下拉菜单的年份范围
*@first 第一个年份界限
*@last 第二个年份界限
*两个参数顺序可以颠倒
*/
jcalendar.prototype.setyears = function(first,last){
if(isnan(first) || isnan(last)) return;
this.firstyear = math.min(first,last);
this.lastyear = math.max(first,last);
}
/**
*以html串返回日历控件的html代码
*/
jcalendar.prototype.tostring = function(){
var fday = new date(this.year,this.month-1,1).getday();//每月第一天的星期数
var select_year = new array();//年份下拉菜单
var select_month = new array();//月份下拉菜单
//日历里的每个单元格的数据,预先定义一段空数组,对应日历里第一周空的位置。[注意星期天对应的数是0]
var date = new array(fday > 0 ? fday - 1 : 0);
var daynum = new date(this.year,this.month,0).getdate();//每月的天数
var html_str = new array();//保存日历控件的html代码
var date_index = 0;//date数组的索引
var weekday = ["日","一","二","三","四","五","六"];
//填充年份下拉菜单
select_year.push("<select id='select_year' style='display:none' onblur =\"hide(this);show('title_year')\" onchange='jcalendar.update(this.value,jcalendar.cur_month)'>");
for(var i = this.firstyear; i <= this.lastyear; i++){
if(i == this.year)
select_year.push("<option value='" + i + "' selected='selected'>" + i +"</option>");
else
select_year.push("<option value='" + i + "'>" + i +"</option>");
}
select_year.push("</select>");
//填充月份下拉菜单
select_month.push("<select id='select_month' style='display:none' onblur =\"hide(this);show('title_month')\" onchange='jcalendar.update(jcalendar.cur_year,this.value)'>");
for(var i = 1; i <= 12; i++){
if(i == this.month)
select_month.push("<option value='" + i + "' selected='selected'>" + i +"月</option>");
else
select_month.push("<option value='" + i + "'>" + i +"月</option>");
}
select_month.push("</select>");
//初始化date数组
for(var j = 1; j <= daynum; j++){
date.push(j);
}
//开始构建日历控件的html代码
html_str.push("<table id='calendar'>");
//日历表格caption
html_str.push("<caption>" + "<a href='#' id='prev_month' title='上一月份' onclick=\"jcalendar.update(jcalendar.cur_year,jcalendar.cur_month-1);return false;\">&laquo;</a><a href='#' id='title_year' title='点击选择年份' onclick=\"hide(this);show('select_year');$('select_year').focus();return false\">" + this.year + "年</a>" + select_year.join("") + "<a href='#' id='title_month' title='点击选择月份' onclick=\"hide(this);show('select_month');$('select_month').focus();return false\">" + this.month + "月</a>" + select_month.join("") + "<a href='#' id='next_month' title='下一月份' onclick=\"jcalendar.update(jcalendar.cur_year,jcalendar.cur_month+1);return false;\">&raquo;</a></caption>");
//日历表格头
html_str.push("<thead><tr>");
for(var i = 0; i < 7; i++){//填充日历头
html_str.push("<td>" + weekday[i] + "</td>");
}
html_str.push("</tr></thead>");
//日历主体
var tmp;
html_str.push("<tbody>");
for(var i = 0; i < 6; i++){//填充日期,6行7列
html_str.push("<tr>");
for(var j = 0; j < 7; j++){
tmp = date[date_index++];
if(!tmp) tmp = "";
html_str.push("<td ");
if(tmp == this.date) html_str.push("id='c_today' ");
html_str.push("onmouseover='jcalendar.over(this)' onmouseout='jcalendar.out(this)' onclick='jcalendar.click(this)'>" + tmp + "</td>");
}
html_str.push("</tr>");
}
html_str.push("</tbody></table>");
return html_str.join("");
}
/**
*特别显示关键天,典型例子博客的日历
* 实现原理,为每个关键天的表格单元添加一个class,名字为keydate,css样式需要自己写,比如加个背景之类的
*@param 日期的数组,比如:[1,4,6,9]
*/
jcalendar.prototype.setkeydate = function(){
var dates = arguments[0];
var tds = $tn("td",$("calendar"));
var reg = null;
for(var i = 0; i < dates.length; i++){
reg = new regexp("\\b" + dates[i] + "\\b");
for(var j = 7; j < tds.length; j++){//忽略表格头
if(reg.test(tds[j].innertext)){
tds[j].classname = "keydate";
break;
}
}
}
}
/**
*可以将日历控件邦定到某个文本框,在点击文本框的时候,会在direction指定的方向弹出日历,可以多次调用来帮定多个文本框
*@ param obj_id 需要邦定日历的文本框的id
*@ param direction 日历出现的相对于文本框的方向 [可选] 默认为right
*/
jcalendar.prototype.bind = function(obj_id,direction){
var obj = $(obj_id);
var direction = direction ? direction : "right";
if(!obj)return;
if(!$("calendar_container")){//唯一容器
var contain = $dc("div");
var s = contain.style;
s.visibility = "hidden";
s.position = "absolute";
s.top = "0px";//不能占据页面空间
s.zindex = 65530;
contain.id = "calendar_container";
contain.innerhtml = this.tostring();
document.body.appendchild(contain);
if(isie){
var ifm = $dc("iframe");
var s = ifm.style;
ifm.frameborder = 0;
ifm.height = (contain.clientheight - 3) + "px";
s.visibility = "inherit";
s.filter = "alpha(opacity=0)";
s.position = "absolute";
s.top = "0px";//不能占据页面空间
s.width = $("calendar_container").offsetwidth;
s.zindex = -1;
contain.insertadjacentelement("afterbegin",ifm);
}
}
//覆盖日历事件
jcalendar.onupdate = function () {};
jcalendar.onclick = function (year,month,date){
$(jcalendar.cur_obj_id).value = $(jcalendar.cur_obj_id).value.replace(/^[^\s]*/i,year + '-' + month + '-' + date);
hide("calendar_container");
}
//邦定事件
document.attachevent("onclick",function(){
if($("calendar_container").style.visibility="visible")hide("calendar_container");
});
obj.attachevent("onclick",function(e){
var obj = e.srcelement;
var dates =obj.value.split(/\s/)[0].split("-");//文本框日期数组,文本框内容可能有时间这样的字串,即:2007-5-26 15:39
var left = obj.offsetleft , top = obj.offsettop;
var x,y,left,top;
var contain = $("calendar_container");
var body = isdtd ? document.documentelement : document.body;
left = body.scrollleft + e.clientx - e.offsetx;
top = body.scrolltop + e.clienty - e.offsety;
switch(direction){
case "right" : x = left + obj.offsetwidth; y = top;break;
case "bottom" : x = left; y = top + obj.offsetheight;break;
}
contain.style.top = y + "px";
contain.style.left = x + "px";
//更新日历日期
if(dates.length == 3 && (jcalendar.cur_year != dates[0] || jcalendar.cur_month != dates[1] || jcalendar.cur_date != dates[2]))
jcalendar.update(dates[0],dates[1],dates[2]);//如果文本框有时间则更新时间到文本框的时间
else if (dates.length != 3){
var now = new date();
jcalendar.update(now.getfullyear(),now.getmonth() + 1,now.getdate());
}
if($("calendar_container").style.visibility="hidden")show("calendar_container");
e.cancelbubble = true;
jcalendar.cur_obj_id = obj.id;
});
$("calendar_container").attachevent("onclick",function(e){e.cancelbubble = true;});
}
/*===========================静态方法=======================================*/
/**
*更新日历内容
*/
jcalendar.update = function(_year,_month,_date){
date = new date(_year,_month-1,1);
var fday = date.getday();//每月第一天的星期数
var year = date.getfullyear();
var month = date.getmonth() + 1;
var daynum = new date(_year,_month,0).getdate();//每月的天数
var tds = $tn("td",$("calendar"));
var years = $("select_year").options;
var months = $("select_month").options;
var _date = _date ? _date : jcalendar.cur_date;
//更新当前年月
jcalendar.cur_year = year;
jcalendar.cur_month = month;
if(_date && _date <= daynum) jcalendar.cur_date = _date;
else if(_date > daynum) jcalendar.cur_date = _date - daynum;
$("title_year").innertext = year + "年";
$("title_month").innertext = month + "月";
//更新年份下拉菜单选中项
for(var i = years.length - 1; i >= 0; i-- ){
if(years[i].value == year){
$("select_year").selectedindex = i;
break;
}
}
//更新月份下拉菜单选中项
for(var i = months.length - 1; i >= 0; i-- ){
if(months[i].value == month){
$("select_month").selectedindex = i;
break;
}
}
//清空日历内容,忽略日历头,即第一行
for(var i = 7; i < tds.length; i++) tds[i].innertext = "";
if( $("c_today"))$("c_today").removeattribute("id");
for(var j = 1; j <= daynum; j++){
tds[6 + fday + j].innertext = j;
if(j == jcalendar.cur_date) tds[6 + fday + j].id = "c_today";
}
jcalendar.onupdate(year,month,jcalendar.cur_date);
}
jcalendar.click = function(obj){
var tmp = $("c_today");
if(tmp && tmp == obj){
jcalendar.onclick(jcalendar.cur_year,jcalendar.cur_month,jcalendar.cur_date);
}
else if(obj.innertext != ""){
if(tmp) tmp.removeattribute("id");
jcalendar.cur_date = parseint(obj.innertext);
obj.id = "c_today";
jcalendar.onclick(jcalendar.cur_year,jcalendar.cur_month,jcalendar.cur_date);
}
}
jcalendar.over = function(obj){
if(obj.innertext != "") obj.classname = "over";
}
jcalendar.out = function(obj){
if(obj.innertext != "") obj.classname = "";
}
//日历更改时执行的函数,可以更改为自己需要函数,控件传递过来的参数为当前日期
jcalendar.onupdate = function(year,month,date){
alert("日历已更改,当前日历日期:" + year + "年" + month + "月" + date + "日");
}
//点击日期时执行的函数,可以更改为自己需要函数,控件传递过来的参数为当前日期
jcalendar.onclick = function(year,month,date){
alert( "当前触发的日期:" + year + "年" + month + "月" + date + "日");
}
var j = new jcalendar();
j.setyears(1990,2020);
j.bind('bdate',"bottom");
var dt=new date();
var y=dt.getfullyear();
var m=dt.getmonth()+1;
if(m<10)
m="0"+m;
var d=dt.getdate();
if(d<10)
d="0"+d;
var sr=y+"-"+m+"-"+d;
document.getelementbyid('bdate').value=sr;
</script>
发表评论
-
java连接数据库Oracle|DB2|Sql Server|Sybase|Informix|MySQL||PostgreSQL|access
2012-02-08 14:17 1058<div>Java数据库连接(JDBC)由 ... -
llvm
2012-02-07 16:29 880llvm ... -
典型相关分析及其适用范围和spss操作(转)
2012-02-07 15:43 1583看文章《科学学研 ... -
只针对中英文混合分词的中文分词器
2012-02-03 10:39 1013该版本说明 1、只针对中英文混合分词 需要一些中文和 ... -
xml CDATA
2012-02-03 08:45 1210<h2 style="font-si ... -
Qt4.7中 默认的构造函数
2012-02-01 09:14 1088<p><span style=&qu ... -
继续向成熟男人靠拢
2012-01-11 17:04 879转自徒儿的人人。 ... -
ava框架数据库连接池比较(c3p0,dbcp和proxool)bonecp
2012-01-11 14:13 1135<h1 style="text ... -
Ajax 应该变成 Ajaj (关于JSON 与 XML 的比较)
2011-12-28 15:23 963<span style="font- ... -
Problem16
2011-12-28 12:53 668package com.shui.mu.yao.io. ... -
C#坦克大战网络版代码
2011-12-20 13:09 983简单C#坦克大战网络版代码 写完单机版 http ... -
腾讯Q+开放平台,相信又是一次成功的模仿
2011-12-20 10:44 861今天看到两则新 ... -
Wifi
2011-12-19 13:14 1086. Confirm if Wifi is On ... -
提高站点在搜索引擎上的排名
2011-12-19 12:04 937对于拥有网站的各位站长来说,都希望自己的站点能够在各种 ... -
ERP简易教程
2011-12-16 16:47 922注明:下面的帖子 ... -
GeoCon 用C#编写的开源的地理信息数据转换工具
2011-12-14 12:29 956<p class="MsoNorma ... -
JTest
2011-12-14 09:00 1029接到parasoft公司一位先生打来的电话,说下个月第 ... -
Apache License Version 2.0 英文内容及中文翻译
2011-12-13 12:59 2338</span> <p class= ... -
Java中网络操作的开源库CommonsNet
2011-12-13 12:39 817<p class="MsoNorma ... -
CSDN BLOG EXPERT
2011-12-13 08:59 1094<img src="http://p. ...
相关推荐
《全面解析jQuery日期插件jquery-date.js及其在H5中的应用》 在现代网页开发中,日期选择器是不可或缺的一部分,特别是在处理用户输入日期或时间的场景。jQuery日期插件`jquery-date.js`是一个功能强大的工具,专为...
jQuery date_input 是一个基于 JavaScript 库 jQuery 的插件,专门用于创建日期选择器。通过这个插件,开发者可以快速地在网页中添加日期选择功能,且无需编写大量的代码。它提供了一种简洁的方式来呈现日期,并且...
Date.js 是一款解析英文日期的工具,使用效果请看: demos 安装 服务器上(node.js): npm install date.js 浏览器上: 使用组件: component install matthewmueller/date 独立使用: 开发版: date.js 迷你...
本文将深入探讨名为`dateWidget.js`的日历控件,该控件是JavaScript实现的一个常见日期选择组件。 一、JavaScript与日历控件 JavaScript是一种轻量级的脚本语言,广泛应用于网页动态效果和交互设计。由于浏览器...
JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象...
在实际开发中,"pickerDateRange"可能会与各种JavaScript库或框架结合,如jQuery、Vue.js、React等,以实现更复杂的交互逻辑和更丰富的功能。开发者需要了解这些库的基本使用,以便将时间插件集成到他们的项目中。 ...
daterangepicker-1.3.7.js 是一个基于 jQuery 的双日历选择插件,它为网页应用程序提供了方便的时间选择功能。这个插件包含了完整的 JavaScript 和 CSS 文件,使得开发者能够轻松集成到自己的项目中,实现高效且美观...
jQuery作为一款广泛使用的JavaScript库,拥有丰富的插件资源,其中Pickadate.js是一款功能强大、设计优雅的日历插件。本文将深入探讨Pickadate.js 3.5.0版本的特性和使用方法,帮助开发者更好地理解和应用这一插件。...
《关于pickadate.js:一款优雅的JavaScript日期选择器插件》 在Web开发中,交互体验是提升用户满意度的关键因素之一,而日期选择器作为常见的交互元素,其设计和功能的重要性不言而喻。Pickadate.js就是这样一款...
《深入解析Date.js:强大的JavaScript日期处理库》 在JavaScript编程中,日期处理是一个常见的需求,但原生的Date对象功能有限,对于复杂的日期和时间操作往往显得力不从心。这时,第三方库Date.js应运而生,它提供...
return date.toLocaleDateString() + " " + date.toLocaleTimeString(); } var data = [ { CHECKDATE: new Date('2023-01-01') }, { CHECKDATE: new Date('2023-02-01') } ]; for (var i = 0; i < data.length;...
Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, // 月份 "d+": this.getDate(), // 日 "h+": this.getHours(), // 小时 "m+": this.getMinutes(), // 分 "s+": this....
《深入解析Pickadate.js:一个强大的JavaScript日期和时间选择器》 Pickadate.js是一款在Web开发中广泛使用的轻量级、可定制化的日期和时间选择器库,尤其适用于那些追求用户界面友好且功能丰富的项目。这个压缩包...
"js_date_time.rar"可能是一个自定义实现的解决方案,但也可能是基于现有的JavaScript日期时间库,如Bootstrap Datepicker, jQuery UI Datepicker或者Moment.js等。这些库提供了丰富的功能,如语言支持、日期范围...
在JavaScript中,Date对象是处理日期和时间的关键组成部分。它允许开发者创建、操作和格式化日期实例,这对于记录用户活动、安排事件或者处理任何需要时间戳的场景都非常有用。在这个"Date Object in Javascript"的...
1990-2100年之间的公历农历转换,适合需要知道当前公历是什么农历的需求
daterangepicker.js用于实现双日历时间控件,是一种功能强大、使用方便、深受广大程序员们的喜爱
5. **易于集成**:只需在页面中引入iScroll.js和Mdate.js两个JavaScript文件,即可快速实现日期选择功能,减少了开发时间和复杂性。 ### 使用步骤 1. **引入库文件**:在HTML文件中,首先需要引入iScroll.js和...
基于流行的JavaScript库jQuery和AngularJS框架,wui-date使得在网页上添加交互式、用户友好的日期选择功能变得异常简单。该组件源码精简,仅有几百行,体现了高效和易维护的设计理念。 1. **jQuery与AngularJS集成*...
JsDate.html