Telerik DatePicker は、WebForms CompareValidator のデータ型チェックをサポートしていません。無効な日付が入力されると、DatePicker は入力ボックスにエラー スタイルを表示しますが、空の値を返すためです。そのため、オプションの日付フィールドを含むデータ入力フォームでは、無効な日付がポストバックに表示されて空のフィールドにならないように、何らかの方法で処理する必要があります。
質問する
2828 次
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 に答える