ASP.NET性别验证不工作

本文关键字:工作 验证 NET ASP | 更新日期: 2023-09-27 17:49:21

好的,所以我希望能够验证是否已经选择了男性/女性,或者是否尚未选择。下面是我的代码:

protected void checkGender()
    {
        var selectedGender = ddlGender.SelectedValue;
        if (selectedGender == "-1")
        {
            Label1.Text = "Please select your gender!";
        }
        else
        {
            Label1.Text = "";
        }
    }

<asp:DropDownList ID="ddlGender" runat="server">
  <asp:ListItem Value="-1">Please select...</asp:ListItem>
  <asp:ListItem Value="Male">Male</asp:ListItem>
  <asp:ListItem Value="Female">Female</asp:ListItem>
</asp:DropDownList>

ASP.NET性别验证不工作

我建议使用RequiredFieldValidator而不是手动进行验证。

<asp:RequiredFieldValidator ID="rfvGender" runat="server"
     ControlToValidate="ddlGender"
     ErrorMessage="Please select your gender!"
     InitialValue="-1"> // Alternativaly you can set the InitialValue in Load event 
</asp:RequiredFieldValidator>

当使用验证器控件时,您可以使用统一的Page.IsValid属性来检查您的页面是否有效。

一般来说,最好使用标准的ASP。. NET验证控件,否则你最终会得到一堆混乱的代码,这将很难在未来维护。

您可以使用SelectedIndex:

    var selectedGender = ddlGender.SelectedIndex;
    if (selectedGender == 0)
    {
        Label1.Text = "Please select your gender!";
    }
    else
    {
        Label1.Text = "";
    }