Дата Сравнить вопрос валидатора в asp.net
У меня есть валидатор сравнения, который проверяет на двух <telerik:RadDatePicker>
Дата начала и Дата окончания. Правило проверки простое. Проверьте, больше ли Дата начала, чем Дата окончания, и покажите пользователю сообщение об ошибке, чтобы исправить его.
он работает как положено, но когда даты начала и окончания совпадают, он показывает сообщение, которое не ожидается. Код ниже:
<asp:CompareValidator ID="dateCompareValidator" runat="server" ControlToValidate="endDate" ControlToCompare="startDate" Operator="GreaterThan" Type="Date" ErrorMessage="Start Date is greater than the End Date - please correct dates."Display="Dynamic"></asp:CompareValidator>
и даты выбора следующие и для даты начала и для даты окончания:
<telerik:RadDatePicker CssClass="rcCalPopup" ID="endDate" runat="server"
Skin="Vista">
<DateInput ID="DateInput2" runat="server" LabelCssClass="radLabelCss_Vista" Skin="Vista">
</DateInput>
<Calendar ShowRowHeaders="false" ID="Calendar2" runat="server" UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False"
ViewSelectorText="x" Skin="Vista">
</Calendar>
<DatePopupButton CssClass="rcCalPopup"></DatePopupButton>
</telerik:RadDatePicker>
1 ответ
Правило, которое вы определили с помощью Валидатора:
- Конечная дата должна быть больше, чем Начальная дата (обратите внимание на отсутствующие равные)
Валидатор Operator
Свойство определяет правило для правильного ввода, а не для недопустимого ввода.
Так что если вы хотите разрешить равные даты, вы должны использовать GreaterThanEqual
<asp:CompareValidator ID="dateCompareValidator" runat="server"
ControlToValidate="endDate" ControlToCompare="startDate"
Operator="GreaterThanEqual" Type="Date"
ErrorMessage="End date must be equal or greater than start date - please correct dates."Display="Dynamic">
</asp:CompareValidator>
Обратите внимание, что я также изменил ErrorMessage
соответственно. Если элемент управления вводом пуст, никакие функции проверки не вызываются и проверка завершается успешно. Использовать RequiredFieldValidator
элемент управления, требующий от пользователя ввода данных в элемент управления вводом.