一个日历控件的调用方法

http://www.alixixi.com/Dev/HTML/jsrun/times/2007/2007052953617.html这是我在网上找到的一个漂亮的日历控件... http://www.alixixi.com/Dev/HTML/jsrun/times/2007/2007052953617.html

这是我在网上找到的一个漂亮的日历控件.
但是我没办法去调用它,虽然他里面有说明是用模拟窗口,但我不知道如何使用.
var dataString = showModalDialog("calendar.htm", "dd日mm月yyyy年" ,"dialogWidth:286px;dialogHeight:221px;status:no;help:no;");
这句语句我没办法理解.

我希望能从该日历控件中返回一个日期值到一个input输入框中.

最好,我希望能控制 他能返回我单独想要的年 月 日的值.
能否在显示让该日历控件能在网页中做为一个链接,在我点击其中其中的一个日期的时候,他能链接到 diray.asp?sj=080402 这样的链接....
麻烦您写出调用代码 和 input的获取返回值方法.

2楼的回复我看不出什么有建议性,我希望你能给我写出代码来.麻烦你.
展开
 我来答
匿名用户
推荐于2016-09-02
展开全部
先把http://www.alixixi.com/Dev/HTML/jsrun/times/2007/2007052953617.html里的那段代码保存成calendar.htm文件。
然后在别的要调用日历的文件里面使用calendar.htm.譬如input框可以这么写:
<input type="text" readonly="readonly" onclick="this.value = showModalDialog('calendar.htm', 'dd日mm月yyyy年' ,'dialogWidth:286px;dialogHeight:221px;status:no;help:no;');" />
实现的效果是:在文本框上面点击,弹出日历框,双击一个日期,则当前日期自动填入到文本框中。

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)

然后在调用的页面上面做一个连接:<a href="#" onclick="location='diray.asp?sj='+showModalDialog('calendar.htm', 'dd日mm月yyyy年' ,'dialogWidth:286px;dialogHeight:221px;status:no;help:no;');return false;">查看日志</a>

如果要把日历控件直接插入到页面中,而不是弹出窗口的话,则修改下面的代码
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);
牛A和牛C间徘徊
2008-04-08 · TA获得超过1037个赞
知道小有建树答主
回答量:782
采纳率:0%
帮助的人:599万
展开全部
主要的代码都在"calendar.htm"里面

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

showModalDialog是js的一个函数,具体参数你搜索一下吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
六十七返璞归真
2008-04-09 · TA获得超过1501个赞
知道大有可为答主
回答量:1854
采纳率:0%
帮助的人:1458万
展开全部
首先先谢谢楼主提供了这么好的一个网站!!!谢谢。

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

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

参考资料: 楼主提供的网站

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
longlyself
2008-04-09 · TA获得超过1159个赞
知道小有建树答主
回答量:940
采纳率:0%
帮助的人:376万
展开全部
用飞雪万年历啊.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式