当前位置: 首页 > 图文教程 > 网络编程 > ASP > 带日期标注的日历控件

ASP
收集整理的ASP的常用内置函数
高手推荐的比较有用的ASP函数集合
ASP中JavaScript处理复杂表单的生成与验证
asp下tag的实现,简单介绍与部分代码
在ASP中用组件检测当前网卡地址的代码
asp中COM组件中如何连接数据库的代码
用ASP创建MDaemon用户的代码
ASP使用FSO读取模板的代码
ASP开发中可能遇到的错误信息中文说明大全(整理收集)
添加超级用户的.asp代码[蓝屏的原创,凯文改进,Ms未公布的漏洞]
全面优化ASP应用程序的性能的方法
实现ASP程序执行时间统计类的代码
ASP中利用execute实现动态包含文件的方法
asp中向文本框输出数据原样式的函数
ADODB.Stream组件Charset属性值集合
关于ASP代码的加密的几个方法
支持权重的无组件ASP广告显示代码
ASP下实现自动采集程序及入库的代码
asp读取远程文件并保存到本地代码
为什么ASP中执行动态SQL总报错误信息?提示语句语法错误

ASP 中的 带日期标注的日历控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 234 ::
收藏到网摘: n/a

  控件名称:Calendar with Date Mark
版    本:1.0
类    型:HTML Component
运行需求:IE 5(推荐IE5.5或更高版本)、MSXML、ASP或ASP.NET(后台)
费    用:免费
支    持:不提供支持
源 代 码:XML Scriptlet
------------------------------------------------------------------------
<public:attach event="oncontentready" onevent="init()"/>
<public:property name="value" get="getValue" put="setValue"/>
<public:property name="stringValue" get="getStringValue" />
<public:property name="mark" get="getCurrentMark" put="setCurrentMark" />
<public:property name="markList" get="getMarkList" />
<public:method name="refresh" />
<public:method name="addMark" />
<public:method name="removeMark" />
<public:method name="removeAllMark" />
<public:method name="loadMark" />
<public:method name="saveMark" />
<public:event name="onvaluechange" id="vlcg" />
<script language="JScript">

//----------------------------------------------------------------
//  HTML Component : Calendar with date mark(带时间标注的日历控件)
//
//  Version        : 1.0
//
//  Request        : Microsoft IE 5 or up
//
//  Author         : JoJo
//
//  Last Realse    : 5/9/2001
//
//  Copyright      : Think Space Soft Tec
//
//  Contact        : [email protected]
//----------------------------------------------------------------

var date = new Date();
var activeDate = new Date();

var marklist = new ActiveXObject("Scripting.Dictionary");

function WriteXMLToDictionary(xmldoc,dict,rewrite){
  var xnodelist = xmldoc.documentElement.selectNodes("Mark");
  if (rewrite) dict.RemoveAll();
  for (var i=0;i<xnodelist.length;i++){
    var xnode = xnodelist.item(i);
    var xdate = xnode.selectSingleNode("MarkDate");
    var xnote = xnode.selectSingleNode("Note");
    //alert(xdate.text + "," + xnote.text);
    if (xdate.text && xnote.text){
      dict.item(xdate.text) = xnote.text;
    }
  }
}

function postxml(xmldoc,url){
  var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  xmlhttp.Open("POST",url,false);
  xmlhttp.Send(xmldoc);
  var xdoc = new ActiveXObject("Microsoft.XMLDom");
  xdoc.async = false;
  xdoc.loadXML(xmlhttp.responseText);
  return !!xdoc.documentElement.text;
}

function saveMark(url){
  var xmldoc = new ActiveXObject("Microsoft.XMLDom");
  WriteDictionaryToXML(marklist,xmldoc);
  if(postxml(xmldoc,url)){
    refresh();
    sendEvent();
    return true;
  }
  return false;
}

function WriteDictionaryToXML(dict,xmldoc){
  xmldoc.loadXML("<MarkList/>");
  var keys = (new VBArray(dict.Keys())).toArray();
  for (var i=0;i<keys.length;i++){
    try{
      var d = new Date(keys[i]);
    }catch(e){