0

Telerik DatePicker 不支持 WebForms CompareValidator 的数据类型检查,因为当输入无效日期时,DatePicker 在输入框上显示错误样式,但返回一个空值。因此,在具有可选日期字段的数据输入表单上,需要一些方法来处理无效日期,以便它们不会在回发时显示为空字段。

4

1 回答 1

1

通过使用 CustomValidator,我们可以检查 DatePicker 在输入文本框中是否有值但返回一个空字符串——这表明日期格式无效。

function DateValidate(sender, args) {
   var datepicker = document.getElementById(sender.controltovalidate).control;
   var dateInput = datepicker.get_dateInput();
   args.IsValid = !(dateInput.get_textBoxValue() != "" && dateInput.get_value() == "");
}

<telerik:RadDatePicker
   ID="RetiredDatePicker" dbSelectedDate='<%# Bind("RetiredDate") %>' Runat="server">
</telerik:RadDatePicker>
<asp:CustomValidator
   ID="RetiredDateValidator" runat="server" CssClass="Error" 
   ClientValidationFunction="DateValidate" ValidateEmptyText="true"
   ControlToValidate="RetiredDatePicker"  SetFocusOnError="True" 
   ErrorMessage="Retired date is not a valid date">*</asp:CustomValidator>
于 2012-10-31T20:53:44.360 回答