我有3个文本框在页面上。我如何设置一个验证器(以及什么样的验证器?)来验证客户端的每个TextBoxes?一个asp.net验证器的几个文本框
第一个文本框必须包含只有1-3位数,第二 - 数字无限多,第三 - 0-5位数
我有3个文本框在页面上。我如何设置一个验证器(以及什么样的验证器?)来验证客户端的每个TextBoxes?一个asp.net验证器的几个文本框
第一个文本框必须包含只有1-3位数,第二 - 数字无限多,第三 - 0-5位数
这将是更好地使用不同的文本框不同的验证。 使用3个验证器,每个显示消息为*符号。
然后使用Validation Summary控件为所有人打印单条消息,因为您希望为所有消息显示单条消息。请参考以下链接:MSDN Validation Summary
入住这也太:Validation Summary to work with client-side validations
你可以使用一个CustomValidator,但我宁愿使用三种不同的验证器,一个用于每个文本框。
可以将CustomValidator的ControlToValidate属性留空。通过这种方式,您可以同时验证多个控件。
你的表达式将是沿着线:
[0-9] {1,3}
[0-9] +
[0-9] {0,5 }
更新以下进一步信息:
你可以从每个文本框的值组合成一个逗号分隔值,然后验证使用[0-9] {0,3},[0-9] + ,[0-9] {1,5}表达。
要么使用javascript将值复制到隐藏文本框字段与它自己的正则表达式验证使用上述表达式,或者只是手动执行验证。
例如使用jquery
$('#hiddenCombinedField').val($('#field1').val()+','+$('#field2').val()+','+$('#field3').val());
在您调用窗体上的验证之前运行此操作。
另请参阅http://speckyboy.com/2009/12/17/10-useful-jquery-form-validation-techniques-and-tutorials-2/了解一些有用的参考资料。
你可以使用一个CustomValidator,但为什么你不使用三个不同的验证器,每个TextBox一个? –
我想同时只显示一条错误消息。 – Alexandre
@Alex使用验证摘要控件显示一个错误消息。在下面检查我的答案。 – Jayesh