我正在使用clientside validation
和server side validation
,jquery
同时执行Asp.net custom validator
和required field validator
。我正在做的是我旁边显示'X'输入错误的tetxbox。这工作正常,我的问题是当文本框输入错误时显示'X',jquery validation
函数触发它,同时当他提交数据时,自定义验证器也会显示一个'X',所以两个'X''X'就像这样显示,这种看起来很奇怪。那么我该如何正确显示呢?我应该从custom validator
删除文字,只在error message
上显示validation summary
。我们将不胜感激。
感谢
答案 0 :(得分:3)
在我看来,继续使用两者,但只是不要在你的jQuery验证上显示'X'。在提交时,将在任何情况下看到自定义验证器中的Text属性,并且该验证器上的ErrorMessage属性将出现在摘要中。我有相同的情况,它工作正常。
希望它可以帮到你。
答案 1 :(得分:3)
CustomValidator控件具有名为ClientValidationFunction
的属性。这允许您调用只有一个作业的javascript方法 - 将IsValid属性(args参数)设置为true或false。自定义验证程序将为您处理错误消息。您无需使用任何jquery来显示和隐藏错误。它应该工作。为此,Asp.net在页面上放置了一些javascript,因此您不必这样做。
注意:如果您有相同输入的第二个RequireFieldValidator(或任何其他验证程序),请注意您应设置Display="Dynamic"
属性,以确保验证程序不占用屏幕空间没有显示(这会导致你的其他验证器消息被推出位置)。
有关自定义验证程序ClientValidationFunction
属性的详细信息,请参阅this page
我希望这会有所帮助