function getDate(writey) {
var sDate;
//这段代码处理鼠标点击的情况
if ("TD" == event.srcElement.tagName)
if ("" != event.srcElement.innerText)
{
sDate = document.all.year.value + "年" + document.all.month.value + "月" + event.srcElement.innerText + "日";
  writey.value=sDate;
  javascript:window.close();
}
}
</SCRIPT><INPUT onclick="getDate(this)">

解决方案 »

  1.   

    同上
    <input name='mytext' onselect="getdata(this)" >
    or
    <body onload="getdata(document.mytext)">
      

  2.   

    如果是ID,应该是eval(writey).value=sDate
    是名字,应该是myform(writey).value=sDate
      

  3.   

    我现在是这样的想法,
    一个文本框在父页面上,然后父页面上有一个按扭,点这个按钮出现一个子日历页面!
    点日历页面中的日期把日期写到父页面的文本框中!
    父页面程序:
    考试时间:
    <script> 
    function forecolor(writeby) {
    window.open('calendar.asp?formy='+writeby,'','width=150,height=160,left=360,top=250');
    }
    </SCRIPT>        <input name="kssj" type="text" id="kssj" size="15">
            
            <input name="..." type="button" id="...3" value="..." onClick="forecolor(kssj)"> 子页面程序:<HTML>
    <HEAD>
    <TITLE>日历</TITLE>
    <STYLE TYPE="text/css">
    .normal{BACKGROUND: #ffffff}
    .today {font-weight:bold;BACKGROUND: #6699cc}
    .satday{color:green}
    .sunday{color:red}
    .days {font-weight:bold}
    </STYLE><%formy="kssj"%>
    <SCRIPT LANGUAGE="JavaScript">
    //中文月份,如果想显示英文月份,修改下面的注释
    /*var months = new Array("January?, "February?, "March",
    "April", "May", "June", "July", "August", "September",
    "October", "November", "December");*/
    var months = new Array("一月", "二月", "三月",
    "四月", "五月", "六月", "七月", "八月", "九月",
    "十月", "十一月", "十二月");
    var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,
    30, 31, 30, 31);
    //中文周 如果想显示 英文的,修改下面的注释
    /*var days = new Array("Sunday", "Monday", "Tuesday",
    "Wednesday", "Thursday", "Friday", "Saturday");*/
    var days = new Array("日","一", "二", "三",
    "四", "五", "六");
    function getDays(month, year) {
    //下面的这段代码是判断当前是否是闰年的
    if (1 == month)
    return ((0 == year % 4) && (0 != (year % 100))) ||
    (0 == year % 400) ? 29 : 28;
    else
    return daysInMonth[month];
    }function getToday() {
    //得到今天的年,月,日
    this.now = new Date();
    this.year = this.now.getFullYear();
    this.month = this.now.getMonth();
    this.day = this.now.getDate();
    }
    today = new getToday();function newCalendar() {today = new getToday();
    var parseYear = parseInt(document.all.year
    [document.all.year.selectedIndex].text);
    var newCal = new Date(parseYear,
    document.all.month.selectedIndex, 1);
    var day = -1;
    var startDay = newCal.getDay();
    var daily = 0;
    if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth()))
    day = today.day;
    var tableCal = document.all.calendar.tBodies.dayList;
    var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear());
    for (var intWeek = 0; intWeek < tableCal.rows.length;intWeek++)
    for (var intDay = 0;intDay < tableCal.rows[intWeek].cells.length;intDay++)
    {
    var cell = tableCal.rows[intWeek].cells[intDay];
    if ((intDay == startDay) && (0 == daily))
    daily = 1;
    if(day==daily)
    //今天,调用今天的Class
    cell.className = "today";
    else if(intDay==6)
    //周六
    cell.className = "sunday";
    else if (intDay==0)
    //周日
    cell.className ="satday";
    else
    //平常
    cell.className="normal";if ((daily > 0) && (daily <= intDaysInMonth))

    cell.innerText = daily;
    daily++;
    }
    else
    cell.innerText = "";
    }
    }function getDate() {
    var sDate;
    //这段代码处理鼠标点击的情况
    if ("TD" == event.srcElement.tagName)
    if ("" != event.srcElement.innerText)
    {
    sDate = document.all.year.value + "年" + document.all.month.value + "月" + event.srcElement.innerText + "日";
      var writeb=<%=formy%>
      opener.document.myform.kssj.value=sDate;
      javascript:window.close();
    }
    }
    </SCRIPT>
    </HEAD>
    <BODY ONLOAD="newCalendar()" OnUnload="window.returnValue = document.all.ret.value;">
    <div align="center">
      <input type="hidden" name="ret">
      <TABLE ID="calendar" cellspacing="0" cellpadding="0" align="center">
        <THEAD  align="center">
          <TR align="center"> 
            <TD COLSPAN=7 ALIGN=CENTER> <SELECT ID="month" ONCHANGE="newCalendar()">
                <SCRIPT LANGUAGE="JavaScript">
    for (var intLoop = 0; intLoop < months.length;
    intLoop++)
    document.write("<OPTION VALUE= " + (intLoop + 1) + " " +
    (today.month == intLoop ?
    "Selected" : "") + ">" +
    months[intLoop]);
    </SCRIPT>
              </SELECT> <SELECT ID="year" ONCHANGE="newCalendar()">
                <SCRIPT LANGUAGE="JavaScript">
    for (var intLoop = today.year-50; intLoop < (today.year + 20);
    intLoop++)
    document.write("<OPTION VALUE= " + intLoop + " " +
    (today.year == intLoop ?
    "Selected" : "") + ">" +
    intLoop);
    </SCRIPT>
              </SELECT> </TD>
          </TR>
          <TR CLASS="days" align="center"> 
            <SCRIPT LANGUAGE="JavaScript">document.write("<TD class=satday>" + days[0] + "</TD>");
    for (var intLoop = 1; intLoop < days.length-1;
    intLoop++) 
    document.write("<TD>" + days[intLoop] + "</TD>");
    document.write("<TD class=sunday>" + days[intLoop] + "</TD>");
    </SCRIPT>
          </TR>
        </THEAD>
        <TBODY border=1 cellspacing="0" cellpadding="0" ID="dayList"ALIGN=CENTER ONCLICK="getDate()" >
          <SCRIPT LANGUAGE="JavaScript">
    for (var intWeeks = 0; intWeeks < 6; intWeeks++) {
    document.write("<TR style='cursor:hand'>");
    for (var intDays = 0; intDays < days.length;
    intDays++)
    document.write("<TD></TD>");
    document.write("</TR>");
    }
    </SCRIPT>
        </TBODY>
      </TABLE>
      <Input Style="width:50pt" type=button value="Cancel" OnClick="Cancel();">
    </div>
    </BODY>
    </HTML><Script Language="JavaScript1.2">
    function Cancel() {
    document.all.ret.value = "";
    window.close();
    }
    </script>