登录名:  密码:  验证码: 4872
设为首页 收藏本站 联系站长
2008年12月4日
农历戊子年(鼠)
十一月初七
 首页 | 最新上传 | 新闻 | 购物商场 | 招聘求职 | HTML学习 | java学习 | IT新闻 | 黑客技术 | 域名和空间 | 流量统计 | 故事小说
 GIF动画制作 | 图片素材 | 源码下载 | 书籍下载 | 视频资料 | ASP | 数据库 | PHP | 基本电脑知识 | 迅雷资源 | 兼职 | 组网工程
 英语学习 | FLASH专区 | ASP.NET | VB | 综合资源网 | 驱动下载 | 游戏下载 | 网站模板网页美工 | 韩文学习 | 论坛
 特别推荐:产品报价  漂亮网站网址  图片素材
  我要查找:  
欢迎您来这里。每天学一点,每天进步一点!
Google
 当前位置:首页 >> HTML学习  >> javascript学习
推荐一个不错的输入框点选时间的js
来源:http://www.llf535.com  发表日期:2008年1月28日 作者: 

 编辑:admin 级别: 司令 浏览次数:285
】    

     //如果是当前选择的天,则改变颜色
     if(tiannetArrDay[i] == tiannetDay ) {
   da.style.backgroundColor = "#CCCCCC";
     } else {
   da.style.backgroundColor = "#EFEFEF";
     }
     da.style.cursor="hand"
    } else {
     da.innerHTML="";da.style.backgroundColor="";da.style.cursor="default"
    }
   }//end for
   tiannetSetValue(false);//给文本框赋值,但不隐藏本控件
  }//end function tiannetSetDay
  //根据option的值选中option
  function checkSelect(objSelect,selectValue) {
   var count = parseInt(objSelect.length);
   if( selectValue < 10 && selectValue.toString().length == 2) {
    selectValue = selectValue.substring(1,2);
   }
   for(var i = 0;i < count;i ++){
    if(objSelect.options[i].value == selectValue){
     objSelect.selectedIndex = i;
     break;
    }
   }//for
  }
  //选中年、月、时、分等下拉框
  function selectObject(){
   //如果年份小于允许的最小年份,则创建对应的option
   if( tiannetYear < tiannetYearSt ) {
    for( var i = tiannetYear;i < tiannetYearSt;i ++  ){
     createOption(document.all.selTianYear,i,i + "年");
    }
    tiannetYearSt = tiannetYear;
   }
   //如果年份超过允许的最大年份,则创建对应的option
   if( tiannetYear > tiannetYearEnd ) {
    for( var i = tiannetYearEnd+1;i <= tiannetYear;i ++  ){
     createOption(document.all.selTianYear,i,i + "年");
    }
    tiannetYearEnd = tiannetYear;
   }
   checkSelect(document.all.selTianYear,tiannetYear);
   checkSelect(document.all.selTianMonth,tiannetMonth);
   if( m_bolShowHour )  checkSelect(document.all.selTianHour,tiannetHour);
   if( m_bolShowMinute ) checkSelect(document.all.selTianMinute,tiannetMinute);
  }
  //给接受日期时间的控件赋值
  //参数bolHideControl - 是否隐藏控件
  function tiannetSetValue(bolHideControl){
   var value = "";
   if( !tiannetDay || tiannetDay == "" ){
    tiannetOutObject.value = value;
    return;
   }
   var mm = tiannetMonth;
   var day = tiannetDay;
   if( mm < 10 && mm.toString().length == 1) mm = "0" + mm;
   if( day < 10 && day.toString().length == 1) day = "0" + day;
   value = tiannetYear + tiannetDateSplit + mm + tiannetDateSplit + day;
   if( m_bolShowHour ){
    var hour = tiannetHour;
    if( hour < 10 && hour.toString().length == 1 ) hour = "0" + hour;
    value += tiannetDateTimeSplit + hour;
   }
   if( m_bolShowMinute ){
    var minute = tiannetMinute;
    if( minute < 10 && minute.toString().length == 1 ) minute = "0" + minute;
    value += tiannetTimeSplit + minute;
   }
   tiannetOutObject.value = value;
   //document.all.divTiannetDate.style.display = "none";
   if( bolHideControl ) {
    tiannetHideControl();
   }
  }
  //是否显示时间
  function showTime(){
   if( !m_bolShowHour && m_bolShowMinute){
    alert("如果要选择分钟,则必须可以选择小时!");
    return;
   }
   hideElementsById(new Array("tiannetHourHead","selTianHour","tiannetMinuteHead","selTianMinute"),true);
   if( m_bolShowHour ){
    //显示小时
    hideElementsById(new Array("tiannetHourHead"),false);
   }
   if( m_bolShowMinute ){
    //显示分钟
    hideElementsById(new Array("tiannetMinuteHead"),false);
   }
  }
  //弹出显示日历选择控件,以让用户选择
  function tiannetPopCalendar(){
   //隐藏下拉框,显示相对应的head
   hideElementsById(new Array("selTianYear","selTianMonth","selTianHour","selTianMinute"),true);
   hideElementsById(new Array("tiannetYearHead","tiannetMonthHead","tiannetHourHead","tiannetMinuteHead"),false);
   tiannetSetDay(tiannetYear,tiannetMonth);
   tiannetWriteHead();
   showTime();
   var dads  = document.all.divTiannetDate.style;
   var iX, iY;
   
   var h = document.all.divTiannetDate.offsetHeight;
   var w = document.all.divTiannetDate.offsetWidth;
   //计算left
   if (window.event.x + h > document.body.offsetWidth - 10    )
    iX = window.event.x - h - 5 ;
   else
    iX = window.event.x + 5;  
   if (iX <0)  
    iX=0;
   //计算top
   iY = window.event.y;
   if (window.event.y + w > document.body.offsetHeight - 10   )
    iY = document.body.scrollTop + document.body.offsetHeight - w - 5 ;
   else
    iY = document.body.scrollTop +window.event.y + 5;  
   if (iY <0)  
    iY=0;
   dads.left = iX;
   dads.top = iY;
   tiannetShowControl();
   selectObject();
  }
  //隐藏日历控件(同时显示被强制隐藏的标签)
  function tiannetHideControl(){
   document.all.divTiannetDate.style.display = "none";
   tiannetShowObject();
   arrTiannetHide = new Array();//将被隐藏的标签对象清空
  }
  //显示日历控件(同时隐藏会遮挡的标签)
  function tiannetShowControl(){
   document.all.divTiannetDate.style.display = "";
   tiannetHideObject("Select");
   tiannetHideObject("OBJECT");
  }
  //根据标签名称隐藏标签。如会遮住控件的select,object
  function tiannetHideObject(strTagName) {
   
   x = document.all.divTiannetDate.offsetLeft;
   y = document.all.divTiannetDate.offsetTop;
   h = document.all.divTiannetDate.offsetHeight;
   w = document.all.divTiannetDate.offsetWidth;
   
   for (var i = 0; i < document.all.tags(strTagName).length; i++)
   {
   
    var obj = document.all.tags(strTagName)[i];
    if (! obj || ! obj.offsetParent)
     continue;
    // 获取元素对于BODY标记的相对坐标
    var objLeft   = obj.offsetLeft;
    var objTop    = obj.offsetTop;
    var objHeight = obj.offsetHeight;
    var objWidth = obj.offsetWidth;
    var objParent = obj.offsetParent;
   
    while (objParent.tagName.toUpperCase() != "BODY"){
     objLeft  += objParent.offsetLeft;
     objTop   += objParent.offsetTop;
     objParent = objParent.offsetParent;
    }
    //alert("控件左端:" + x + "select左端" + (objLeft + objWidth) + "控件底部:" + (y+h) + "select高:" + objTop);
   
    var bolHide = true;
    if( obj.style.display == "none" || obj.style.visibility == "hidden" || obj.getAttribute("Author") == "tiannet" ){
     //如果标签本身就是隐藏的,则不需要再隐藏。如果是控件中的下拉框,也不用隐藏。
     bolHide = false;
    }
    if(  ( (objLeft + objWidth) > x && (y + h + 20) > objTop && (objTop+objHeight) >  y && objLeft < (x+w) ) && bolHide ){
     //arrTiannetHide.push(obj);//记录被隐藏的标签对象
     arrTiannetHide[arrTiannetHide.length] = obj;
     obj.style.visibility = "hidden";
    }
   
   
   }
  }
  //显示被隐藏的标签
  function tiannetShowObject(){
   for(var i = 0;i < arrTiannetHide.length;i ++){
    //alert(arrTiannetHide[i]);
    arrTiannetHide[i].style.visibility = "";
   }
  }
  //初始化日期。
  function tiannetInitDate(strDate){
   var arr = strDate.split(tiannetDateSplit);
   tiannetYear = arr[0];
   tiannetMonth = arr[1];
   tiannetDay = arr[2];
  }
  //清空
  function tiannetClear(){
   tiannetOutObject.value = "";
   tiannetHideControl();
  }
   //任意点击时关闭该控件
  function document.onclick(){
    with(window.event.srcElement){
   if (tagName != "INPUT" && getAttribute("Author") != "tiannet")
   tiannetHideControl();
    }
  }
  //按ESC键关闭该控件
  function document.onkeypress(){
   if( event.keyCode == 27 ){
    tiannetHideControl();
   }
  }
 </script>
   </head>
   <body>
       (1)只选择日期   <input type="text" name="date"   readOnly onClick="setDay(this);"><br/>
 (2)选择日期和小时  <input type="text" name="dateh"  readOnly onClick="setDayH(this);"><br/>
 (3)选择日期和小时及分钟 <input type="text" name="datehm" readOnly onClick="setDayHM(this);">
   </body>
</html>

推荐给你的朋友:http://www.studywebgood.com

分页: [1] [2] [3]
(编辑:网站学习网)
Google
 ·上一篇文章: 08互联网市场前景广阔 新春促销预
 ·下一篇文章: 如何用Javascript判断输入是否是
 该篇文章的评论
 暂无相关评论
 姓名:  邮箱:
 内容:
                
 相关文章
 · 新手入门级HTML教程
 · html学习-布啦布啦网
 · 新手入门级HTML教程
 · html学习-乐趣网
 · HTML 语言教程
 · 推荐一个不错的输入框点
 · HTML 语言教程:目录
 · HTML教程
 · Html教程-yesky
 · HTML和CSS基础教程
 · HTML教程-无忧网
 最新上传文章
 · 轮番变化的图片广告脚本
 · 冯小刚导的所有电影列表
 · 互联网寒冬来临 企
 · MSI文件提取器,msi文件破
 · 如何把做好的。net代码生
 · 正确使用 cookie&n
 · ASP中DateAdd函数的用法
 · Erase 语句
 · 吉列剃须刀
 · phpmyadmin安装中"
 · 安装,启动与卸载Mysql系

服务说明 | 关于网站 | 联系我们 | 友情链接
网站学习网欢迎您!
http://www.studywebgood.com
浙ICP备07030755号 
联系邮箱:shuizhilang@126.com 如本网站侵犯了您的版权,请马上通知我.