我在 asp.net 中创建一个自定义文本框控件。我在文本框中为字母、数字、电子邮件地址放置了一些内置验证。现在我想如果这些验证中的任何一个失败,则应在文本框下方动态添加标签(错误标签)。
可能吗 ?
谢谢
ValidationSummary 控件也可能对您有用。
您不需要单独的标签,Validator
可以为 ASP.NET 中的每个标签指定一个合适的标签,该标签ErrorMessage
可以出现在文本框旁边。
查看从 继承的验证器列表,这将为您BaseValidator
提供执行此操作所需的一切
如果您坚持要使用自己的验证,并且使用客户端 JavaScript 进行验证,请创建类似以下内容...
<asp:Label runat="server" id="lblErrors" style="display:none;">
You have errors!
</asp:Label>
然后在您的验证器中...
document.getElementById("<%=lblErrors.ClientID%>").style.display =
(anyErrors ? "" : "none");
如果您的验证都在服务器上完成,那么有类似...
<asp:Label runat="server" id="lblErrors" Visible="false">
You have errors!
</asp:Label>
然后在您的验证器中...
lblErrors.Visible = anyErrors
(如果没有进行验证,您还需要确保它lblErrors.Visible
也设置为)false
不要添加标签,而是添加CustomValidator(或其他验证器之一)。
Display
如果您希望它仅在检测到错误时出现,请将其属性设置为动态。