C#实现日期选择

 

 说明:在A页面有一个textbox,旁边一个日历的URl,当点击日历图片时,出现日历选择,选中某个日期后,将选中的日期写入textbox值

 A页面的aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="OriginalDataCheck.aspx.cs"
    Inherits="PReport.Pages.OriginalDataCheck" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form  id="Form1" method="post" runat="server">
    <table class="MainTableStyle">
        <tr>
            <td class="MainTableHeaderStyle">
                管制口进出人力原始资料查询
            </td>
        </tr>
        <tr style="width: 100%" align="center">
            <td>
                <table style="width: 800px; height: 100%">
                    <tr>
                        <td class="MainTableItemStyle">
                            <table style="width: 100%; height: 100%" cellpadding="0" cellspacing="0">
                             <tr style="height: 20px">
                                                <td style="width: 15%;" align="right">
                                                    <asp:Label ID="Label11" runat="server" Text="工号"></asp:Label>
                                                </td>
                                                <td style="width: 15%" align="left">
                                                    <asp:TextBox runat="server" ID="txtEmpno"></asp:TextBox>
                                                </td>
                                                <td style="width: 15%;" align="right">
                                                    <asp:Label ID="Label12" runat="server" Text="姓名"></asp:Label>
                                                </td>
                                                <td style="width: 15%" align="left">
                                                    <asp:TextBox runat="server" ID="txtName"></asp:TextBox>
                                                </td>
                                                <td style="width: 20%;" align="right">
                                                    <asp:Label ID="Label13" runat="server" Text="卡号"></asp:Label>
                                                </td>
                                                <td style="width: 20%" align="left">
                                                    <asp:TextBox runat="server" ID="txtCardno"></asp:TextBox>
                                                </td>
                                            </tr>
                                            <tr style="height: 20px">
                                                <td style="width: 15%;" align="right">
                                                    <asp:Label ID="Label14" runat="server" Text="起始日期From"></asp:Label>
                                                </td>
                                                <td align="left">
                                                    <asp:TextBox runat="server" ID="txtFrom" AutoPostBack="true"></asp:TextBox>
                                                       <asp:HyperLink ID="HyperLink2" runat="server" ImageUrl="~/img/calendar.gif"
                                                        NavigateUrl="javascript:calendar_window=window.open('../calendar.aspx?formname=Form1.txtFrom','Pick_A_Date','width=400,height=220,top=250,left=350');calendar_window.focus();">HyperLink</asp:HyperLink>
                                                    <td align="right">                                                     
                                                        <asp:Label ID="Label1" runat="server" Text="To"></asp:Label>
                                                    </td>
                                                    <td align="left">
                                                        <asp:TextBox ID="txtTo" runat="server" AutoPostBack="true"></asp:TextBox>
                                                          <asp:HyperLink ID="HyperLink1" runat="server" ImageUrl="~/img/calendar.gif"
                                                            NavigateUrl="javascript:calendar_window=window.open('../calendar.aspx?formname=Form1.&quot; &amp; txtTo.ID &amp; &quot;','Pick_A_Date','width=400,height=220,top=250,left=350');calendar_window.focus();">HyperLink</asp:HyperLink>
                                                    </td>
                                                </td>
                                                <td style="width: 20%" align="center" colspan="2">
                                                    <asp:Button ID="btnSubmit" runat="server" Text="查询" OnClick="btnSubmit_Click" Style="height: 21px" />
                                            </tr>
                                        </table>
                                    </td>
                                </tr>                                
                         </table>
                        </td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
    </form>
</body>
</html>

 

calendar.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Calendar.aspx.cs" Inherits="PReport.Calendar" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
   <title>Calendar</title>
</head>
<body>
    <form  id="Form1" method="post" runat="server">
    <asp:Calendar id="Calendar1" runat="server" BorderWidth="1px" BackColor="White" Width="350px"
    ForeColor="Black" Height="190px" Font-Size="9pt" Font-Names="Verdana" BorderColor="White"
    DayNameFormat="Full" ondayrender="Calendar1_DayRender"
        onselectionchanged="Calendar1_SelectionChanged">
    <TodayDayStyle BackColor="#CCCCCC"></TodayDayStyle>
    <NextPrevStyle Font-Size="8pt" Font-Bold="True" ForeColor="#333333" VerticalAlign="Bottom"></NextPrevStyle>
    <DayHeaderStyle Font-Size="8pt" Font-Bold="True"></DayHeaderStyle>
    <SelectedDayStyle ForeColor="White" BackColor="#333399"></SelectedDayStyle>
    <TitleStyle Font-Size="12pt" Font-Bold="True" BorderWidth="4px" ForeColor="#333399" BorderColor="Black"
     BackColor="White"></TitleStyle>
    <OtherMonthDayStyle ForeColor="#999999"></OtherMonthDayStyle>
   </asp:Calendar>
   <asp:Literal id="Literal1" runat="server"></asp:Literal>
    </form>
</body>
</html>

calendar.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace PReport
{
    public partial class Calendar : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
          
        }

        protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
        {
            if (e.Day.Date.ToString("d")==DateTime.Now.ToString("d"))
        {
          e.Cell.BackColor = System.Drawing.Color.LightGray;
        }           
        }

        protected void Calendar1_SelectionChanged(object sender, EventArgs e)
        {        
         string strjscript = "<script language=\"javascript\">window.opener." + HttpContext.Current.Request.QueryString["formname"] + ".value = '" + Calendar1.SelectedDate.ToString("yyyy/MM/dd") + "';window.close();</script>";
           Literal1.Text = strjscript;
           
        }

    }
}

你可能感兴趣的:(server,calendar,C#,asp,textbox,Hyperlink)