如何使扩展程序日历无法在所选日期选择日期库?

时间:2016-08-11 18:28:41

标签: asp.net ajaxcontroltoolkit calendarextender

如何让用户无法在开始日期之前选择结束日期?

<asp:Label ID="lblStartDate" runat="server" Text="Start Date: " CssClass="labelClass"></asp:Label>
<asp:TextBox ID="tbStartDate" runat="server" ReadOnly="True"></asp:TextBox>
<ajaxToolkit:CalendarExtender ID="CalExtStartDate" runat="server" Format="dd/MM/yyyy" TargetControlID="tbStartDate" />



<asp:Label ID="lblEndDate" runat="server" Text="End Date: " CssClass="labelClass"></asp:Label>
    <asp:TextBox ID="tbEndDate" runat="server" ReadOnly="True"></asp:TextBox>
    <ajaxToolkit:CalendarExtender ID="CalExtEndDate" runat="server" TargetControlID="tbEndDate" Format="dd/MM/yyyy" />

在我的.aspx.cs中我已经有了,但它仍然无效。

    if (!IsPostBack)
        {
            CalExtStartDate.StartDate = DateTime.Now.AddDays(-7);

            CalExtEndDate.StartDate = CalExtStartDate.SelectedDate;

        }

1 个答案:

答案 0 :(得分:1)

我相信您可以使用比较验证器与2个必填字段验证器配对(每个日期文本框一个):

<asp:TextBox ID="tbStartDate" runat="server" ReadOnly="True"></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ErrorMessage="End Date required" ID="requiredDate1" ControlToValidate="tbStartDate" />

<asp:TextBox ID="tbEndDate" runat="server" ReadOnly="True"></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ErrorMessage="Start Date required" ID="requiredDate2" ControlToValidate="tbEndDate" />

<asp:CompareValidator runat="server" ID="compareValidator1" ErrorMessage="End date must be after start date" ControlToCompare="tbStartDate" ControlToValidate="tbEndDate" Operator="GreaterThan" Type="Date" />