一个日历控件的调用方法

2025-01-31 10:44:39
推荐回答(4个)
回答1:

先把http://www.alixixi.com/Dev/HTML/jsrun/times/2007/2007052953617.html里的那段代码保存成calendar.htm文件。
然后在别的要调用日历的文件里面使用calendar.htm.譬如input框可以这么写:

实现的效果是:在文本框上面点击,弹出日历框,双击一个日期,则当前日期自动填入到文本框中。

showModalDialog参数里面的'dd日mm月yyyy年'是返回到文本框里面的日期格式,可以用别的代替,如'yyyy-mm-dd'.

如果要实现点击其中的一个日期的时候,他能链接到 diray.asp?sj=080402 这样的链接的话,要修改calendar.htm的代码,
找到这段代码:
window.document.attachEvent("ondblclick" ,
function()
{
var obj = window.event.srcElement;
if(obj.tagName.toLowerCase() == "span" && obj.parentNode.className.replace(/Ctable/ig,"star") == "star" )
{
var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
window.close();
}
}

);

var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
修改为
window.returnValue = obj.id.split('-')[0].slice(2)+('0'+obj.id.split('-')[1]).slice(-2)+('0'+obj.id.split('-')[2]).slice(-2)

然后在调用的页面上面做一个连接:查看日志

如果要把日历控件直接插入到页面中,而不是弹出窗口的话,则修改下面的代码
var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
window.close();
为:
window.location='diray.asp?sj='+obj.id.split('-')[0].slice(2)+('0'+obj.id.split('-')[1]).slice(-2)+('0'+obj.id.split('-')[2]).slice(-2);

回答2:

主要的代码都在"calendar.htm"里面

只不过主页面通过showModalDialog以网页对话框的形式显示了出来

showModalDialog是js的一个函数,具体参数你搜索一下吧

回答3:

首先先谢谢楼主提供了这么好的一个网站!!!谢谢。

第二,这个问题嘛,也可以在你说的这个网站上找到解决方法哦,比如:http://www.alixixi.com/Dev/HTML/jsrun/times/2007/2007081473081.html

呵呵,这个就很好,自己稍加修改即可。

回答4:

用飞雪万年历啊.