[英]Selectively applying validation on textboxes with C# asp.net
我正在使用C#,asp.net 3.5。 我有一个下拉列表,其值如下:
Pick last 24 hrs data
Pick last 48 hrs data
Pick data between dates
当我选择Pick data between dates
选择Pick data between dates
它将显示两个文本框,用户可以在其中设置“从日期”和“到日期”
我想应用一个验证,如果用户between dates option
” between dates option
,则必须填充日期的文本框,对于其他下拉值,则无需检查文本框的值。
我应该通过jquery / javascript(已经在做)还是通过使用现有的验证控件来实现?
是的,您可以通过比较验证来完成
看到这个例子:
<asp:CompareValidator ID="cmpVal1" ControlToCompare="txtStartDate"
ControlToValidate="txtEndDate" Type="Date" Operator="GreaterThanEqual"
ErrorMessage="*Invalid Data" runat="server"></asp:CompareValidator>
我认为,即使您使用JavaScript进行此验证,也应该在服务器上重复相同的验证。 在其他情况下,可以禁用浏览器中的javascript并将无效形式发送到服务器。 如果要提供美观的UX,则应创建javascript验证。
如果您正在寻找纯asp.net方法,则可以执行以下操作:1)设置下拉菜单Autopostback =“ true”,这将在您每次更改下拉列表中的值时触发回发。
<asp:DropDownList id="ddl"
AutoPostBack="True"
runat="server">
2)为您的日期时间字段添加验证控件。
<asp:RequiredFieldValidator />
3)根据所选的下拉值,在回发期间禁用或启用验证控件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.