Validators

<< Click to Display Table of Contents >>

Navigation:  ASP.NET > ASP Controls >

Validators

Previous pageReturn to chapter overviewNext page

Usando os diversos tipos de validators.

Eles validam o conteúdo de campos no client.

 

Para todos os testes abaixo você irá precisar de 1 textbox (TextBox1) e 1 button.

 

RequiredFieldValidator

 

Torna o controle associado de preenchimento obrigatório e verifica se o usuário digitou ou selecionou algo.

Ex: Campos de preenchimento obrigatório.

 

RequiredFieldValidator.ControlToValidade = TextBox1

RequiredFieldValidator.ErrorMessage = Tá errado!

 

Rode e clique no botão. Só isso!

 

RangeValidator

 

Faz a validação do valor informado verificando se ele se encontra  dentro de um intervalo de valores aceitos pela aplicação.

Permite-se a validação de um valor máximo , mínimo ou ambos.

 

RangeValidator.ControlToValidade = TextBox1

RangeValidator.Type = int

RangeValidator.MinimumValue = 1

RangeValidator.MaximumValue = 10

 
RegularExpressionValidator

 

Verifica se os dados entrados coincide com uma expressão regular. Ex: validações de CEP, RG , CPF , etc..

 

RegularExpressionValidator.ControlToValidade = TextBox1

RegularExpressionValidator.ValidationExpression = Expressão Regular

 

Exemplos de expressões regulares

 

Somente números inteiros

^\d+$

Somente números reais

^[0-9]+?(.|,[0-9]+)$

Email

^([\w\-]+\.)*[\w\- ]+@([\w\- ]+\.)+([\w\-]{2,3})$

Telefone

^\d{2}-\d{4}-\d{4}$    // (34)2345-4325

CPF

^\d{3}\.?\d{3}\.?\d{3}\-?\d{2}$

CNPJ

^\d{3}.?\d{3}.?\d{3}/?\d{3}-?\d{2}$

Data

^((0[1-9]|[12]\d)\/(0[1-9]|1[0-2])|30\/(0[13-9]|1[0-2])|31\/(0[13578]|1[02]))\/\d{4}$

CEP

^\d{5}\-?\d{3}$

URL

^((http)|(https)|(ftp)):\/\/([\- \w]+\.)+\w{2,3}(\/ [%\-\w]+(\.\w{2,})?)*$

IP

^\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b$

 

CompareValidator

 

Realiza a comparação do valor informando com um valor informado em outro controle ou com uma constante.

Ex: Validação de senhas.

 

Coloque 2 TextBox

 

CompareValidator.ControlToValidade = TextBox1

CompareValidator.ErrorMessage = Senha não confere!

CompareValidator.ControlToCompare = TextBox2

CompareValidator.Type = String

CompareValidator.Operator = Equal 

 

CustomValidator com JavaScript

 

Permite que você crie o seu próprio código de validação de dados.

 

Coloque um TextBox e um CustomValidator

 

CustomValidator.ClientValidationFuncion = Validar (nome da funcao JavaScript)

CustomValidator.ControlToValidade = TextBox1

CustomValidator.ErrorMessage = Tá errado!

 

aspx:

 

<script language="javascript" type="text/javascript">

  function Validar(src, args) {

       args.IsValid = (args.Value % 7 == 0)

   }

</script>

 

Só vai permitir passar se o valor do TextBox1 for 7!

 

CustomValidator com validação no servidor

 

Permite que você crie o seu próprio código de validação de dados.

 

CustomValidator.ControlToValidade = TextBox1

CustomValidator.ErrorMessage = Tá errado!

 

Programe o evento ServerValidate

 

  protected void CustomValidator1_ServerValidate1(object source, ServerValidateEventArgs args)

   {

      try

       {

           args.IsValid = (int.Parse(args.Value) < 10);

       }

      catch (Exception erro)

       {

           args.IsValid = false;

       }

   }

 

 

Colocando figura no RequiredFieldValidator

 

Veja o código abaixo como fazer isso (nome o img)

 

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"

          ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator">

<img src="http://showroom.braziltradenet.gov.br/Imagens/imgErro.gif"/>

</asp:RequiredFieldValidator>

 

 

validator_imagem

 

ValidationSummary

 

Permite a exibição de um resumo de todas as validações feitas na página.

Coloque um ValidationSummary abaixo do botão e faça o teste com qualquer um dos outros Validators.

A propriedade ShowMessageBox mostra uma mensagem numa window ao invés de somente na tela.

 

Observação

 

Você pode usar um ou mais controles de validação para validar um campo da sua página ASP.NET , assim você pode definir para um mesmo campo que o seu preenchimento é obrigatório e que o valor a ser informado deve ficar dentro de um intervalo.