Подтвердить что ты не робот

Проверка количества в обязательном полевом валидаторе

Можно ли поместить проверку количества в обязательный полевой валидатор в текстовое поле asp.net?

4b9b3361

Ответ 1

Вы должны использовать CompareValidator, например:

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

Это самый естественный выбор, если вам нужна простая проверка типа данных. В противном случае, если вы хотите проверить диапазон, используйте предложения RangeValidator. Если вам нужен определенный шаблон, используйте RegularExpressionValidator.

Обратите внимание, что вы захотите добавить RequiredFieldValidator, так как некоторые валидаторы разрешат пустые записи.

Ответ 2

На самом деле для этой цели вам нужен только валидатор regularexpression с ValidationExpression = "^\d+?$"

Ответ 3

Может быть, вы можете использовать RangeValidator, прикрепленный к этому текстовому полю, задав Type to Integer или wathever.

Класс RangeValidator на MSDN

Ответ 4

Другая возможность заключается в использовании RegexpValidator и добавлении регулярного выражения, которое гарантирует наличие в нем 1 или более цифр, например:

RegularExpressionValidator regexpvalidator = new RegularExpressionValidator(); 
regexpvalidator.ID = "RegularExpressionValidator1"; 
regexpvalidator.ValidationExpression = "\d+"; 
regexpvalidator.ControlToValidate = "YourControl"; 
regexpvalidator.ErrorMessage = "Please specify a digit"; 
regexpvalidator.SetFocusOnError = true; 

Ответ 5

Нет, RequiredFieldValidator может только проверить, что поле содержит что-то.

Если вы хотите проверить, что поле содержит только цифры, вы можете использовать RegularExpressionValidator с шаблоном "\d+".

Ответ 6

ОбязательныйFieldValidator проверяет только заполнение поля. Не важно, что с.

Вам понадобится дополнительный CompareValidator с ним. Оператор установлен в DataTypeCheck и его тип будет установлен в Integer. Обратите внимание, что вам нужны оба: CompareValidator будет игнорировать пустой ввод.

Ответ 7

Да, вот так:

<asp:TextBox ID="tb" runat="server"></asp:TextBox>
<asp:RangeValidator ControlToValidate="tb" Type="Integer"></asp:RangeValidator>