验证不同的网络字段 单击 asp.net 中的单个按钮



实际上,我在单击按钮时进行了表单验证。但我有一个包含两个值的DropdownList。当DropDownList值更改时,我会显示不同的字段,并且某些字段是隐藏的。我想对这些字段进行验证,但我想只验证当前在表单上显示的字段,而不是隐藏字段上的字段。

选项 1:使用 Swich 大小写。您有 5 个字段:A,B,C,D,E当组合框的值 =1 时,将显示 A,B。当组合框的值 =2 时,将显示 C,D,E。

在按钮上单击:

组合框的值为 1:验证字段:A,B

组合框的值为 2:验证字段:C,D,E

希望这有帮助。

如果使用验证控件来验证窗体,并且使用DropDownListSelectedIndexChanged 事件根据DropDownListSelectedValue隐藏或显示控件,则可以使用相同的事件从验证控件中删除ValidationGroup,如下所示。

proteced void yourDropDownList_SelectedIndexChanged (Object Sender, EventArgs e)
{
    if (yourDropDownList.SelectedValue == "Value1")
    {
        yourValidatorControl1.ValidationGroup = String.Empty;
        yourValidatorControl2.ValidationGroup = String.Empty;
        yourValidatorControl3.ValidationGroup = "yourValidationGroup";
        yourValidatorControl4.ValidationGroup = "yourValidationGroup";
        yourValidatorControl5.ValidationGroup = "yourValidationGroup";
    }
    else if (yourDropDownList.SelectedValue == "Value2")
    {
        yourValidatorControl1.ValidationGroup = "yourValidationGroup";
        yourValidatorControl2.ValidationGroup = "yourValidationGroup";
        yourValidatorControl3.ValidationGroup = String.Empty;
        yourValidatorControl4.ValidationGroup = String.Empty;
        yourValidatorControl5.ValidationGroup = String.Empty;
    }
}

如果不是这种情况,请发布一些代码,如何验证和使您的控件可见/隐藏。

最新更新