验证月,日和年的三个单独输入字段中的日期

时间:2011-08-18 14:11:39

标签: c# asp.net validation

我正在构建一个底部有一组出生日期字段的WebForm。根据页面设计,此DOB实际上分为三个字段,分别为。我们需要在提交表单时验证用户是否至少年满13岁。

如果我有一个TextBox,那么使用RangeValidator就可以轻松实现这一目标:

rvDOB.MaximumValue = DateTime.Now.AddYears(-13).ToShortDateString();
rvDOB.MinimumValue = DateTime.MinValue.ToShortDateString();

问题在于我没有一个TextBox而是三个独立的TextBox。如果有三个单独的TextBox控件,我怎样才能完成此检查至少13年?

我尝试过的一种方法是创建一个额外的{{1}},当提出表单提交点击事件时,将三个字段组合到单个文本框中并对其进行验证。这没用。

1 个答案:

答案 0 :(得分:1)

我的方法是在每个框中输入一个值后触发事件,然后在该事件中放置一些逻辑,这将在每个框中包含数据时验证用户的年龄。

delegate(object sender, EventArgs args) {
    if (!box1.Text.IsNullOrEmpty() &&
        !box2.Text.IsNullOrEmpty() &&
        !box3.Text.IsNullOrEmpty()) {
        // Validate the user is at least 13
    }
}