我做了个UI上面上搞一个textbox, 一点textbox就可以出现calendar,选择日期后,calendar就会消失,最后日期就会显示在textbox里,因为我做的web application所以不能用datetimepicker,我在网上查了一下,说是可以用自定义控件,可是我不知道具体怎么搞?
有没有前辈可以帮帮忙啊?
万分感谢~~~

解决方案 »

  1.   

    My97DatePicker.rar 有管方网站  是一个比较好的   有用法和例子  然后提供下载
    楼主多给我分哦 
      

  2.   

    http://www.mysuc.com/test/My97DatePicker/
    为了这分 我辛劳再辛劳
      

  3.   

    楼上说的都不错
    或者用ajaxcontroltoolkit里自带的日历控件 我现在都是用这个
      

  4.   

    自定义textbox,嵌入js
    自定义tetbox
      

  5.   

    这个太多了
    我发三个完整的小例子代码给你
    [email protected]
      

  6.   

    Ajax Control Toolkit  中的CalendarExtendar或者直接用js    function calendar() //主调函数
    {
        var e = window.event.srcElement;   writeIframe();
        var o = WebCalendar.calendar.style; WebCalendar.eventSrc = e;
    if (arguments.length == 0) WebCalendar.objExport = e;
        else WebCalendar.objExport = eval(arguments[0]);    WebCalendar.iframe.tableWeek.style.cursor = WebCalendar.drag ? "move" : "default";
    var t = e.offsetTop,  h = e.clientHeight, l = e.offsetLeft, p = e.type;
    while (e = e.offsetParent){t += e.offsetTop; l += e.offsetLeft;}
        o.display = ""; WebCalendar.iframe.document.body.focus();
        var cw = WebCalendar.calendar.clientWidth, ch = WebCalendar.calendar.clientHeight;
        var dw = document.body.clientWidth, dl = document.body.scrollLeft, dt = document.body.scrollTop;
        
        if (document.body.clientHeight + dt - t - h >= ch) o.top = (p=="image")? t + h : t + h + 6;
        else o.top  = (t - dt < ch) ? ((p=="image")? t + h : t + h + 6) : t - ch;
        if (dw + dl - l >= cw) o.left = l; else o.left = (dw >= cw) ? dw - cw + dl : dl;    if  (!WebCalendar.timeShow) WebCalendar.dateReg = /^(\d{1,4})(-|\/|.)(\d{1,2})\2(\d{1,2})$/;
        else WebCalendar.dateReg = /^(\d{1,4})(-|\/|.)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;    try{
            if (WebCalendar.objExport.value.trim() != ""){
                WebCalendar.dateStyle = WebCalendar.objExport.value.trim().match(WebCalendar.dateReg);
                if (WebCalendar.dateStyle == null)
                {
                    WebCalendar.thisYear   = new Date().getFullYear();
                    WebCalendar.thisMonth  = new Date().getMonth()+ 1;
                    WebCalendar.thisDay    = new Date().getDate();
                    alert("原文本框里的日期有错误!\n可能与你定义的显示时分秒有冲突!");
                    writeCalendar(); return false;
                }
                else
                {
                    WebCalendar.thisYear   = parseInt(WebCalendar.dateStyle[1], 10);
                    WebCalendar.thisMonth  = parseInt(WebCalendar.dateStyle[3], 10);
                    WebCalendar.thisDay    = parseInt(WebCalendar.dateStyle[4], 10);
                    WebCalendar.inputDate  = parseInt(WebCalendar.thisDay, 10) +"/"+ parseInt(WebCalendar.thisMonth, 10) +"/"+ 
                    parseInt(WebCalendar.thisYear, 10); writeCalendar();
                }
            }  else writeCalendar();
        }  catch(e){writeCalendar();}
    }
    ...//太长  贴不出来
       
    <script type="text/javascript" language="javascript" src="../Calendar.js"></script><asp:TextBox ID="txStartDate" runat="server" onfocus="calendar()"></asp:TextBox>