所以我有一个ASP.NET/VB Web应用程序,我在其中使用RequiredFieldValidators和CustomValidators。不过,我在所有的验证中都遇到了一些重大问题。当您单击“下一步”按钮转到表单的下一页而未填写必填字段时,所有RequiredFieldValidators都会触发并显示错误消息,但过了一会儿,它仍会转到下一页。有时在改变代码中不相关的部分之后,它会再次开始工作,并在一段时间内工作,直到我改变其他东西。 CustomValidators更加不一致,有时会工作,有时会触发,但不会阻止用户移动到下一页,有时甚至根本不工作,但只是在更改代码时停止/开始工作,看起来应该不会影响它。有时一个人工作,一个人不工作。这让我疯狂的是什么似乎是如此随机。我似乎无法确定代码中的哪些更改实际上会影响这一点。有没有人有任何想法?是否有什么会一次影响页面上的所有验证?这里是我的一些代码,如果需要,我也可以发布一些代码。验证问题
必填字段验证:
<asp:RequiredFieldValidator ID="rfvFirstName" ControlToValidate="txtFirstName" runat="server"SetFocusOnError="true" ErrorMessage="Required"></asp:RequiredFieldValidator>
自定义验证:
<asp:CustomValidator ID="cvRequired" runat="server" ControlToValidate="txtCourseNum" Enabled="true" ErrorMessage=""></asp:CustomValidator>
<asp:CustomValidator ID="cvDuplicate" runat="server" ControlToValidate="txtCoursePrefix" Enabled="true" ErrorMessage=""></asp:CustomValidator>
下一步按钮:
<asp:Button ID="btnNextA" runat="server" Text="Next" OnClick="btnNext_Click" UseSubmitBehavior="true" CausesValidation="true" />
您的自定义验证器是否实际执行任何操作?您尚未设置ValidateFunction(服务器或客户端)。 – Rezler
是的,它在后面的代码中连接起来(ServerValidate事件) – Sara