【问题标题】:validating dropdown list in asp.net验证asp.net中的下拉列表
【发布时间】:2018-02-23 03:43:18
【问题描述】:

我有一个网络表单,其中有三个下拉菜单,如下图所示:

上图中的表单有 3 个下拉菜单(负责运营的物理人员、驻地人员、员工),我的任务是,如果未选择任何内容,则应显示警告消息 Please Select an Instrument Type


我用来实现这一点的 .aspx 代码是:

<asp:DropDownList ID="ddlInstrumentType2" runat="server" AutoPostBack="true">
</asp:DropDownList>
<asp:Label ID="InstrumentTypeSelected" runat="server" Visible="true"></asp:Label>
<asp:Image class="helpicon" ID="imgSelInst" runat="server" ImageUrl="~/images/help2.png" ToolTip="imgSelInst"/>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" InitialValue="---------   Select Instrument Type   ---------" ControlToValidate="ddlInstrumentType2"
   ErrorMessage="Please select an Instrument Type" ValidationGroup="vgrp1">*
</asp:RequiredFieldValidator>

上面的代码似乎没有验证,因为如果我没有从下拉列表中选择任何内容,它不会显示任何警告消息。我想知道我在做什么错误以及我需要在上面的代码中做哪些更改,以便在我不选择任何下拉列表时成功显示警告。

【问题讨论】:

    标签: asp.net validation drop-down-menu


    【解决方案1】:

    我希望您的DropDownList 没有在InitialValue 属性中定义ListItem 项目值,因此您需要使用其他值来触发验证:

    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" InitialValue="0" ControlToValidate="ddlInstrumentType2"
       ErrorMessage="Please select an Instrument Type" ...>*
    </asp:RequiredFieldValidator>
    

    注意:确保RequiredFieldValidator中定义的验证组名存在。

    或者在您的DropDownList(应该绑定到数据源)中使用ListItem,并将初始值作为第一项:

    <asp:DropDownList ID="ddlInstrumentType2" runat="server" AutoPostBack="true">
        <asp:ListItem Text="---------   Select Instrument Type   ---------" Value="---------   Select Instrument Type   ---------"></asp:ListItem> 
    </asp:DropDownList>
    

    由于RequiredFieldValidator 控件仅在ListItem 为空白时才有效,因此第一种方法应该足够了。

    【讨论】:

    • 我尝试使用第一个代码&lt;asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" InitialValue="0" ControlToValidate="ddlInstrumentType2" ErrorMessage="Please select an Instrument Type" ValidationGroup="vgrp1"&gt;* &lt;/asp:RequiredFieldValidator&gt;,但由于某些原因它不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多