【发布时间】:2014-09-23 19:05:00
【问题描述】:
我有一个带有必填字段验证器的下拉列表,当用户单击该按钮时该列表未显示。用户必须从下拉列表中选择一个项目,如果他将其留在 --Select One -- 必填字段验证器将触发。我注意到在萤火虫上它显示可见性为隐藏。
<span id="MainContent_RequiredFieldValidator1" style="color: red; visibility: hidden;">*</span>
这适用于我的其他非数据绑定下拉列表。它显示可见性:此下拉列表可见。
<asp:DropDownList ID="ddlCenter" runat="server" AppendDataBoundItems="True"
CssClass="form-control textBoxAsp" DataSourceID="SqlDataSourceCenter"
DataTextField="Desc" DataValueField="CenterID">
<asp:ListItem Text="--Select One--" Value="0" Selected="True" />
</asp:DropDownList>
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1"
ControlToValidate="ddlCenter"
Text="*"
ForeColor="Red"
ErrorMessage="Center is required."
InitialValue ="--Select One--"
ValidationGroup="InsertCenter" />
<asp:ValidationSummary ID="ValidationSummary1" ForeColor="Red" runat="server" ValidationGroup="InsertCenter" />
<a runat="server" onserverclick="btnAddCenter_Click" id="btnAddUser" validationgroup="InsertEmployee">Add Center</a>
我尝试设置Display="Static",但Validator控件的样式属性实际上设置为“visibility:hidden”。
我尝试设置 set Display="Dynamic" ,但验证器控件样式属性实际上设置为“display:none”
有什么想法吗?
【问题讨论】:
-
如果我没记错的话——我可能是,我刚醒来——
Select One仍然是一个选项。所以这不是必需字段验证器失败的问题,只是它不知道“必需”是什么意思。您可能必须编写自定义 JavaScript 验证器。 -
将
ValidationGroup="InsertCenter"添加到 DropDownList 是否可以解决问题?
标签: c# asp.net validation visual-studio-2012 requiredfieldvalidator