asp .net一个控件的多个验证器

时间:2013-01-13 13:47:45

标签: asp.net validation

我正在开发asp.net网站。我在页面上有一个文本框。我正在使用Validators来验证字段。我使用了两个验证器来验证我的电话号码字段。一个用于检查长度,另一个用于检查所有输入值是数字

我的问题是:对于与上述两个条件不匹配的无效输入,机器人显示错误消息。

我想一次只显示1条错误消息。这可能吗?请指教我。

3 个答案:

答案 0 :(得分:1)

" ValidationSummary服务器控件适用于页面上的所有验证服务器控件。它会将其他验证控件发送回页面的所有错误消息全部放在页面上的一个位置(您指定的位置)。这些错误消息可以显示在列表,项目符号列表或段落中。"

使用ValidationSummary Control。

编辑:现在我看到了你想要的东西,你需要自定义验证器控件。观看这个例子:

http://asp.net-tutorials.com/validation/custom-validator/

在那里,您将了解IsValid属性,让您确定何时输入表达式实际上有效。有几个if-else会做这项工作。

答案 1 :(得分:0)

最后,我设法解决了我的问题。使用 CSS

这就是我的做法

在样式表中编写了一个新的css类(.errorMsg)来处理错误消息的显示样式。

将css类分配给每个验证器。

现在,无效输入的多条错误消息重叠。

要解决此问题,我为错误消息<span>标记指定了背景颜色。 (背景颜色与形式BbColor相同)。

所以现在重叠的消息没有显示出来。现在只显示最顶层的错误。

答案 2 :(得分:-1)

我认为你只需要一个验证器,因为你可以通过设置textbox control的maxlength属性来限制输入字符的长度。你只需要一个正则表达式验证器来验证数字。但是如果你仍然需要包含两个验证器并显示一条消息,您可以编写javascript进行验证。