我觉得这可能是一个非常简单的问题,但是我怎么也想不出来。
我有一个 asp:textbox。 我有一个自定义验证器,其中包含客户端和服务器端验证。
以下是代码:
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
<asp:CustomValidator ID="vldFirstName" runat="server" ControlToValidate="txtFirstName"
ClientValidationFunction="ValidateName" OnServerValidate="vldFirstName_ServerValidate"
Text="Please put in your first name" ErrorMessage="First name missing"
ForeColor="Red" font-bold="true" Display="Dynamic"
ValidateEmptyText="true">
</asp:CustomValidator>
如果我直接进入页面并单击提交,留空文本框,则服务器端将正确验证。
但是,如果使用客户端验证。 如果我进入框并立即离开而不输入任何内容,则javascript验证不起作用。 如果我随后输入内容,离开框,然后清除框,则验证有效。 它会返回说它是空的。
但是,我希望他们一进入框就立即进行验证。 我不确定为什么如果文本框没有被触摸,则验证器不会启动。
ValidateName
的代码可能会有所帮助。 - stuartdvldFirstName_ServerValidate
代码和ValidateName
。 - Salah Akbari