Ниже приведен код, который я использую для выбора даты в asp.net.
Я использую текстовое поле для отображения даты и изображения, чтобы показать значок календаря, и расширитель календаря Ajax, чтобы выбрать дату в формате dd-mmm-yyyy
.
<asp:TextBox ID="txtReqCompDate" runat="server"
ToolTip="Select Analysis Required Date" CssClass="formtext"
CausesValidation="True">
</asp:TextBox>
<asp:ImageButton ID="ibReqCompletionDate" runat="server"
ImageUrl="~/Images/Calendar.png" ImageAlign="AbsBottom" Height="15px" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server"
ControlToValidate="txtReqCompDate" Display="Dynamic" Text="Required"
ErrorMessage="Analysis Required Date" ValidationGroup="valProjForm"
SetFocusOnError="True" Font-Size="Smaller">
</asp:RequiredFieldValidator>
<asp:CompareValidator runat="server" ID="cmp1"
ErrorMessage="The date must be greater than todays date"
ControlToValidate="txtReqCompDate" Type="Date" Operator="GreaterThan" />
<cc1:CalendarExtender ID="CalendarExtender1" runat="server"
PopupButtonID="ibReqCompletionDate"
TargetControlID="txtReqCompDate" Format="dd-MMM-yyyy" Enabled="True">
</cc1:CalendarExtender>
Даже если я использую эту строку при загрузке страницы, это бесполезно.
cmp1.ValueToCompare = DateTime.Now.ToShortDateString();
Пожалуйста, предложите мне способ сразу же отобразить сообщение, когда кто-то выбирает дату меньше, чем сегодняшняя дата, используя comparevalidator.
Мне нужна аналогичная функциональность на нескольких страницах моего сайта. А также на той же странице выбрать дату больше, чем txtReqCompDate.
Или, пожалуйста, предложите мне способ отключить предыдущие даты в ajax calenderextender и показать дату перед текущей датой в расширителе Ajax, не влияя на мою текущую функциональность кода, поскольку я кодирую в .net 2.0.
Моя основная проблема здесь, она показывает проверку, если дата меньше сегодняшней даты и даже когда дата больше текущей даты. Всегда показывает сообщение об ошибке, независимо от того, какой валидатор я использую, сравниваю или ранжирую