我有一个日历控件,当选择一个日期时,它应该以“dd-mm-yyyy”格式显示在关联的文本框中。并有一个比较验证器,它应该验证所选日期,如果它大于今天的日期。我已经CompareEndTodayValidator 的ValueToCompare财产‘这样写的'CompareEndTodayValidator'不能转换为'Date'类型。
<asp:TextBox runat="server" ID="tb_date" BackColor="White" ></asp:TextBox>
<asp:Calendar ID="EndDate" runat="server"
OnSelectionChanged="EndDate_OnSelectionChanged"
</asp:Calendar>
<asp:CompareValidator runat="server" ID="CompareEndTodayValidator" ErrorMessage="Exam date can't be less than today"
ControlToValidate="tb_date" Type="Date" Operator="LessThanEqual" > </asp:CompareValidator>
protected void Page_Load(object sender, EventArgs e)
{
CompareEndTodayValidator.ValueToCompare = DateTime.Now.ToString("dd-MM-yyyy");
}
protected void EndDate_OnSelectionChanged(object sender, EventArgs e) //COMPARE VALIDATOR FOR EXAM DATE
{
tb_date.Text = EndDate.SelectedDate.ToString("dd-MM-yyyy");
}
它显示了一个错误
值'26 -09-2013' ’不能转换为类型‘日期’。
请大家帮忙。我已经通过改变type =“string”来尝试它。但是失败了。当把mm-dd-yyyy frmat正常工作时,它可以正常工作。但我需要dd-mm-yyyy格式
你能帮我用自定义验证写@詹姆斯 – ARATHY
见我最后的编辑 – James
我已经这样做了。不工作。控制不会到ServerValidation() – ARATHY