views:

455

answers:

6

Is it possible to put Number validation in required field validator in asp.net text box?

+2  A: 

Maybe you can use a RangeValidator attached to that textbox, setting Type to Integer or wathever.

RangeValidator class on MSDN

m.bagattini
You can also you a Regex Validator with \d+ as the pattern: http://www.java2s.com/Code/ASP/Validation-by-Control/Avalid5digitzipcode.htm
Gavin Miller
A: 

Another possibility is using the RegexpValidator and adding a regular expression that makes sure there's 1 or more digits in it, something like:

RegularExpressionValidator regexpvalidator = new RegularExpressionValidator(); 
regexpvalidator.ID = "RegularExpressionValidator1"; 
regexpvalidator.ValidationExpression = "\d+"; 
regexpvalidator.ControlToValidate = "YourControl"; 
regexpvalidator.ErrorMessage = "Please specify a digit"; 
regexpvalidator.SetFocusOnError = true;
Robban
No, validators other than RequiredFieldValidator (and maybe CustomValidator) will ignore empty inputs.
Hans Kesting
A: 

No, a RequiredFieldValidator can only verify that the field contains something.

If you want to verify that the field only contains digits, you can use a RegularExpressionValidator with the pattern "\d+".

Guffa
+1  A: 

A RequiredFieldValidator only checks if the field is filled in. It doesn't care what with.

You will need an extra CompareValidator with it's Operator set to DataTypeCheck and it's Type set to Integer. Note you need both: the CompareValidator will ignore an empty input.

Hans Kesting
A: 

Yes, like this:

<asp:TextBox ID="tb" runat="server"></asp:TextBox>
<asp:RangeValidator ControlToValidate="tb" Type="Integer"></asp:RangeValidator>
Jakob Gade
+1  A: 

You should use the CompareValidator, for example:

<asp:TextBox ID="txt" runat="server />
<asp:CompareValidator ID="cv" runat="server" ControlToValidate="txt" Type="Integer"
   Operator="DataTypeCheck" ErrorMessage="Value must be an integer!" />

This is the most natural choice if you want a simple data type check. Otherwise if you want to verify a range use the RangeValidator suggestions. If you need a certain pattern use the RegularExpressionValidator.

Note that you'll want to add a RequiredFieldValidator as well since some validators will allow blank entries.

Ahmad Mageed