下午所有,
一旦用户单击提交按钮,我需要在 Web 表单上验证两个文件。这些 Web 表单还包含一个验证摘要,以使用户了解错误消息。
我的代码看起来像这样......
<td>
<asp:TextBox ID="txtOrganiser" runat="server" ></asp:TextBox>
</td>
<td>
<asp:RequiredFieldValidator ID="RequiredFieldVal0"
ControlToValidate="txtOrganiser"
ErrorMessage="Meeting Organiser"
Text="*"
runat="server" Display="None"/>
</td>
<td>
<asp:DropDownList ID="AgendaStatus"
runat="server" Height="24px" Width="125px"> </asp:DropDownList>
</td>
<td>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1"
ControlToValidate="AgendaStatus"
ErrorMessage="Agenda Status"
Text="*"
runat="server" Display="None"/>
</td>
<td>
<asp:ValidationSummary ID="ValidationSummary"
HeaderText="You must enter a value in the following fields:"
DisplayMode="BulletList"
EnableClientScript="true"
runat="server"/>
</td>
“会议组织者”的代码运行良好。但是“AgendaStatus”下拉菜单没有。我认为这是因为下拉列表本质上已经有一个默认值来提示用户选择项目?
议程下拉列表使用此代码...
'Used for the Enum property on the web page for the dropdown (Agenda Template.aspx)
Private Sub BindStatus()
AgendaStatus.DataSource = EnumHelper.ToList(GetType(AgendaStatus))
AgendaStatus.DataTextField = "Value"
AgendaStatus.DataValueField = "Key"
AgendaStatus.DataBind()
AgendaStatus.Items.Insert(0, New ListItem(" - Please Select -", "~"))
End Sub
而这段代码...
Imports Microsoft.VisualBasic
Imports SembCorp.CoreLib
Public Enum AgendaStatus
<EnumDescription("Created")> _
TempCreated = 1
<EnumDescription("In Progress")> _
InProgress = 2
<EnumDescription("Completed")> _
Completed = 3
End Enum
如果下拉框没有选定的项目,则会显示一条错误消息...
Requested value '~' was not found.
我可以看到为什么显示此错误,因为用户没有选择下拉选项之一。但是我认为我可以添加RequiredFieldValidator 工具来解决这个问题。这没有奏效,我没有解决方案。
任何帮助都是提前得到的。
问候贝蒂