【发布时间】:2025-12-09 16:05:03
【问题描述】:
我有一个简单的 Web 表单,其中包含一个文本框和一个与它相连的 RequiredFieldValidator。当触发RequiredFieldValidator 错误时,用户必须单击提交两次才能发布表单。第一次单击清除错误,第二次实际触发按钮单击事件。这是预期的行为吗?
<asp:RequiredFieldValidator ID="reqFieldCloseComment" ControlToValidate="tbCloseComment" ValidationGroup="ChangeStatus" ErrorMessage="Please enter a reason" Display="Dynamic" runat="server"></asp:RequiredFieldValidator>
<asp:TextBox ID="tbCloseComment" runat="server" CausesValidation="true" TextMode="MultiLine" Height="107px" Width="400px"></asp:TextBox>
<asp:Button ID="btnCloseRequestFinal" Text="Finish" CssClass="CloseReqButton" runat="server" ValidationGroup="ChangeStatus" />
我尝试根据从 Google 搜索中找到的建议将 CausesValidation 添加到文本框,但没有帮助。
EDIT 似乎并不总是需要双击来触发事件。只要在文本框中输入文本,然后将焦点从文本框中移开,RequiredFieldValidator 错误消息就会消失,只需单击一下即可。
【问题讨论】:
-
如果在文本框中输入文字后按Tab键,还需要点击两次提交按钮吗?
-
@patmortech - 是的。看起来当焦点从文本框移开时,错误就消失了。那么这个按钮只需要一键点击。
标签: asp.net validation requiredfieldvalidator