<%@ Page Language="vb" AutoEventWireup="false" >
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
head
runat
=
"server"
>
<
title
>Untitled Page</
title
>
<
script
type
=
"text/javascript"
src
=
"Resources/Scripts/jquery.js"
></
script
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
asp:ScriptManager
ID
=
"SM"
runat
=
"server"
></
asp:ScriptManager
>
<
div
id
=
"dateBirthDate"
class
=
"error"
></
div
>
<
telerik:RadDatePicker
runat
=
"server"
ID
=
"rdpBirthDate"
DateInput-ValidationGroup
=
"EditGroup"
>
<
DateInput
ID
=
"dIrdpBirthDate"
runat
=
"server"
></
DateInput
>
<
ClientEvents
/>
</
telerik:RadDatePicker
>
<
div
id
=
"dateWeddingDate"
class
=
"error"
></
div
>
<
telerik:RadDatePicker
runat
=
"server"
ID
=
"rdpWeddingDate"
DateInput-ValidationGroup
=
"EditGroup"
>
<
DateInput
ID
=
"dIrdpWeddingDate"
runat
=
"server"
ClientEvents-OnError
=
"OnRadDatePickerError"
></
DateInput
>
<
ClientEvents
/>
</
telerik:RadDatePicker
>
<
asp:Button
ID
=
"btnSubmit"
runat
=
"server"
text
=
"Submit"
ValidationGroup
=
"EditGroup"
/>
<
asp:CustomValidator
ID
=
"CustomValidator1"
runat
=
"server"
ErrorMessage
=
"CustomValidator"
ClientValidationFunction
=
"ValidateRadDatePickers"
ValidationGroup
=
"EditGroup"
>Please correct errors to continue.</
asp:CustomValidator
>
<
script
type
=
"text/javascript"
>
$(document).ready(function()
{
$("dIrdpWeddingDate > ClientEvents").OnError = "OnRadDatePickerError";
}
);
</
script
>
<
script
type
=
"text/javascript"
>
// This array will contain "suspicious" date pickers - controls that might be in invalid state.
// We don't need to track date pickers that newer fired Error event.
var suspiciousDatePickers = new Array();
// Each date picker that fires an error will be stored in suspiciousDatePickers array.
function OnRadDatePickerError(sender, args)
{
try
{
if (suspiciousDatePickers != null)
suspiciousDatePickers[sender.ClientID] = sender;
}
catch (ex)
{
alert(ex);
}
}
// Checks if any date picker is in invalid state.
// We have to check these controls here because no event fired when
// date picker changes its state to valid.
function ValidateRadDatePickers(sender, args)
{
try
{
if (suspiciousDatePickers != null)
for (var i in suspiciousDatePickers)
if (i != null && suspiciousDatePickers[i] != null)
{
var datePicker = suspiciousDatePickers[i];
if (datePicker.GetDate() == null && datePicker.GetTextBoxValue() != "")
{
// Date picker contains text that cannot be represented as date,
// or date exceeds min/max date.
args.IsValid = false;
break;
}
}
}
catch (ex)
{
alert(ex);
}
}
</
script
>
</
form
>
</
body
>
</
html
>