NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalArtigosASP.NET › Capítulo 08 : 03
Quer receber novidades e e-books gratuitos?
« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
ASP.NET - CURSO COMPLETO
Autor: Júlio Battisti

Lição 060 - Capítulo 08 - O controle RequiredFieldValidator

Este controle é utilizado para garantir que um determinado campo seja preenchido, ou seja, não podemos deixar o campo em branco. Conforme descrito anteriormente, os controles de validação, são utilizados em conjunto com outros controles do formulário. Por exemplo, se tivermos um campo Nome, em um formulário, podemos associar um controle RequiredFieldValidator com o campo Nome, para garantir que o usuário seja obrigado a preencher o campo Nome.

A sintaxe para este controle é a seguinte:

<asp:RequiredFieldValidator 
            id="identificação  no código" 
            runat="server" 
            ControlToValidate="nome  do controle associado" 
                 ErrorMessage="Mensagem de erro." 
                ForeColor="Red" 
            BackColor="Grey"
 … >
</asp:RequiredFieldValidator>
Uma sintaxe alternativa é a seguinte:
<asp:RequiredFieldValidator 
            id="identificação  no código" 
            runat="server" 
            ControlToValidate="nome  do controle associado" 
                 ErrorMessage=" Mensagem de erro." 
                ForeColor="Red" 
            BackColor="Grey"
 … />

Observe que ao invés de fechar a tag desta maneira: </asp:RequiredFieldValidator>, simplesmente utilizamos um />. As duas sintaxes são válidas.

Onde podemos utilizar os seguintes atributos:

  • id: É um nome que identifica o controle. Este nome é utilizado no código para acessar as propriedades e métodos do controle.
  • runat=”server”: identifica como sendo um controle de servidor. Todos os controles asp: são controles de servidor.
  • ControlToValidate: Neste atributo definimos o nome do controle que será validado pelo controle de validação. Por exemplo se o controle de validação está associado com um campo Nome do formulário, nesta propriedade devemos informar a identificação do controle Nome. A identificação é o valor definido na propriedade id do controle Nome. Esta frase foi repetitiva e enfadonha, de propósito, para que você não esqueça esta associação.
  • ErrorMessage: Podemos definir uma mensagem de erro que será exibida, caso a validação do campo falhe. Por exemplo, o usuário não preencheu um campo de preenchimento obrigatório.
  • ForeColor: Utilizado para definir a cor do texto da mensagem de erro.
  • BackColor: Utilizado para definir a cor de segundo plano do texto da mensagem de erro.

Vamos a um exemplo simples. Vamos criar um formulário onde temos dois campos:

  • email
  • nome

O campo email é de preenchimento obrigatório, já o campo nome é de preenchimento opcional. Para garantir que o campo email seja preenchido vamos associar um controle de validação do tipo RequiredFieldValidator com o campo email. Se o campo email não for preenchido vamos emitir a seguinte mensagem:

“O email é de preenchimento obrigatório, por favor forneça o seu email e clique no botão Enviar.”

Na Listagem 8.2 temos o código para o exemplo proposto.

Listagem 8.2 – O controle de validação RequiredFieldValidator.

<html>
<head>
<script language="C#"  runat="server">
      void  Enviar_Click(Object sender, EventArgs e) 
      {
            // Código  para gravar os dados recebidos no
            // banco de  dados.
      }
</script>
</head>
<body>
   <form  runat=server>
            <h3>Exemplo  do controle RequiredFieldValidator!!!</h3>
            <asp:RequiredFieldValidator id="Requer_email" 
            ControlToValidate="email"
            Type="String" 
           ErrorMessage="O  email é de preenchimento obrigatório, 
                                    por favor forneça o seu email e clique 
                                    no botão Enviar"
            Text="O e-mail é obrigatório!!"
               ForeColor="Red"
            runat="server"/>
            <table>
               <tr>
                  <td><h3>Digite o  e-mail:</h3> </td>
                  <td><input id="email"  type=text size=40 runat="server"></td> 
              </tr>
              <tr>
                  <td><h3>Digite o  nome:</h3> </td>
                  <td><input id="nome"  type=text size=40 runat="server"></td> 
              </tr>
              <tr>
                      <td><h3>Cadastrar -></h3></td>
                      <td><input type=submit value="Enviar"  OnServerClick="Enviar_Click" runat="server">
                      </td>
               </tr>
            </table>
             <asp:ValidationSummary
             id="Summary1"
             runat="server"/>
</form>
</body>
</html>

Digite o código da Listagem 8.2 e salve o mesmo em um arquivo chamado chap8ex2.aspx, na pasta chap8, dentro da pasta wwwroot, conforme descrito no item: “Check List para acompanhar os exemplos deste livro”, no Capítulo 6.

Para acessar esta página utilize o seguinte endereço:

http://localhost/chap8/chap8ex2.aspx

No campo email digite: jose@abc.com.br.  No campo Nome digite: José da Silva. Dê um clique no botão Enviar. Você obterá o resultado indicado na Figura 8.3.

Curso Completo de ASP.NET - Júlio Battisti
Figura 8.3 Todos os dados obrigatórios foram digitados. – chap8ex2.aspx.

Deixe o campo email em branco.  No campo Nome digite: José da Silva. Dê um clique no botão Enviar. Você obterá o resultado indicado na Figura 8.4.

Curso Completo de ASP.NET - Júlio Battisti
Figura 8.4 O controle de validação RequiredFieldValidator entrando em ação.

Observe que nesta caso o campo de validação detectou que o campo email não foi preenchido e avisou.

Vamos entender melhor o código da Listagem 8.2.

  • Na seção de código não fizemos absolutamente nada. Somente colocamos o evento Enviar_Click e no corpo do procedimento alguns comentários. Por exemplo, no corpo deste procedimento poderíamos detectar se a validação ocorreu com sucesso para todos os controles e, em caso afirmativo, enviar as informações digitadas pelo usuário para um banco de dados. Por enquanto ainda não sabemos fazer a conexão com banco de dados. Aprenderemos a conectar com banco de dados a partir do Capítulo 10.
  • Na seção de apresentação criamos um formulário com dois controles (HtmlServerControls) do tipo texto (type=text). Um para o usuário digitar o e-mail e outro para digitar o nome. Queremos que o campo email seja de preenchimento obrigatório. Para isso utilizamos um controle de validação do tipo RequiredFieldValidator. A inserção do controle de validação é feita com o trecho de código a seguir:
            <asp:RequiredFieldValidator id="Requer_email" 
            ControlToValidate="email"
            Type="String" 
           ErrorMessage="O  email é de preenchimento obrigatório, 
                                    por favor forneça o seu email e clique 
                                    no botão Enviar"
            Text="O e-mail é obrigatório!!"
               ForeColor="Red"
            runat="server"/>

O atributo mais importante é o seguinte:

         ControlToValidate="email"

Com a definição deste atributo estamos informando que o campo a ser validado, ou seja,  o campo que é de preenchimento obrigatório é o campo email do formulário. Neste atributo (ControlToValidate) informamos o ID do campo a ser validado.

O texto do atributo ErrorMessage vai ser exibido em um controle do tipo ValidationSumary. Por isso que incluímos um controle deste tipo, no final do formulário, caso contrário o texto definido no atributo ErrorMessage não seria exibido. No trecho de código a seguir temos a definição do controle ValidationSumary:

<asp:ValidationSummary
            id="Summary1"
            runat="server"/>

O atributo Text define o texto que será exibido no local onde o controle de validação está definido, caso a validação falhe. Aqui podemos fazer um teste interessante, para comprovar que realmente é gerado código para validação no Cliente, quando o navegador é o Internet Explorer, conforme descrito no início do capítulo. Para provar isto vamos fazer o seguinte teste:

Clique no campo e-mail e apague o que estiver neste campo. Pressione a tecla <TAB> para ir para o campo Nome. Observe que o  texto “O e-mail é obrigatório!! (conforme definido no atributo Text do controle de validação) aparece acima do campo e-mail, sem que tenhamos clicado no botão Enviar, conforme indicado na Figura 8.5.

Curso Completo de ASP.NET - Júlio Battisti
Figura 8.5 A validação no cliente, gerada automaticamente para o IE, em ação.

Se você clicar no botão Enviar, estando o campo email em branco também será exibido a mensagem de erro “O email é de preenchimento obrigatório, por favor forneça o seu email e clique  no botão Enviar". Este texto está definido no atributo ErrorMessge do controle de validação Requer_email e é exibido no controle Summary1, que é um controle do tipo ValidationSummary, especificamente projetado para exibir mensagens de erro quando algum campo não é validado.

Com este exemplo já podemos ter uma boa idéia do funcionamento dos controles de validação. Se você voltar para o exemplo da Listagem 8.1, já terá condições de entender grande parte do exemplo. Agora vamos continuar estudando os demais tipos de controle de validação disponíveis com o ASP.NET.

« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
Quer receber novidades e e-books gratuitos?

 
 

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2024 ®

LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO

DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI