仅在asp.net中的验证摘要中显示验证错误

时间:2014-05-13 06:47:09

标签: c# asp.net

<asp:ValidationSummary ID="vsArea" runat="server" />
<div class="controls">
    <asp:DropDownList ID="ddlDegreeLevel" runat="server" 
                      placeholder="DegreeLevel" CssClass="form-control">
    </asp:DropDownList>
    <asp:RequiredFieldValidator ID="rfvDegreeLevel" runat="server"
                                ControlToValidate="ddlDegreeLevel"
                                Display="None" ForeColor="Red" InitialValue="-1"
                                ErrorMessage="Please select degree level" Text="">
    </asp:RequiredFieldValidator>
</div>

错误消息&#34; rfvDegreeLevel&#34;显示在验证 - 摘要和控件下方。我还设置了Display =&#34; None&#34;但仍然显示在这两个区域。

我想仅在验证摘要上显示消息。

1 个答案:

答案 0 :(得分:0)

这是设计的...消息将显示在验证控件和摘要中。基本上你有两个选择

  1. 在控件和验证摘要中显示单独的消息。例如。您可以在摘要中的验证控件和详细错误消息中添加红色*,这是最佳做法。要实现此目的,请设置验证控件的Text和ErrorMessage属性。文本将出现在控件中,ErrorMessage将出现在摘要中。

  2. 隐藏控件中的消息,将控件的Display属性设置为none ..

  3. 您必须将验证组添加到所有控件。为此,您可以使用以下代码:

    <asp:ValidationSummary ID="vsArea" runat="server" ValidationGroup="degree" />
    <div class="controls">
        <asp:DropDownList ID="ddlDegreeLevel" runat="server" 
                          placeholder="DegreeLevel" CssClass="form-control">
        </asp:DropDownList>
        <asp:RequiredFieldValidator ID="rfvDegreeLevel" runat="server"  
                                    ValidationGroup="degree"
                                    ControlToValidate="ddlDegreeLevel"
                                    Display="None" ForeColor="Red" InitialValue="-1"
                                    ErrorMessage="Please select degree level" Text="">
        </asp:RequiredFieldValidator>
    </div>