![]() |
|||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
|
Você está aqui: ASP.NET ::: ASP.NET Validation Controls (Controles de Validação) ::: Miscelâneas |
Como usar a propriedade EnableClientScript da classe BaseValidator para efetuar a validação somente no lado do servidor (server-side validation)Quantidade de visualizações: 6630 vezes |
Por padrão os controles de validação do ASP.NET fazem seu trabalho no lado do cliente (client-side), ou seja, no browser. Isso quer dizer que a página não é enviada durante o processo de validação. A validação do lado do servidor (server-side) ocorre somente quando o navegador não suporta JavaScript ou o usuário o desabilitou. Porém, pode haver situações nas quais queremos que a validação seja feita somente no lado do servidor, talvez para executarmos algum código antes de validar os dados. Veja abaixo um trecho de código no qual temos uma caixa de texto, um botão e um controle de validação <asp:RequiredFieldValidator>. Ao executar este exemplo você verá que a página é realmente enviada antes que a validação do campo ocorra. Eis o código para a página Default.aspx: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>Estudos ASP.NET</title> </head> <body> <form id="form1" runat="server"> Usuário: <asp:TextBox ID="txtUsuario" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="Enviar!" onclick="Button1_Click" /> <br /><br /> <asp:Label ID="lblMensagem" runat="server" Text="Mensagem de validação"> </asp:Label> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtUsuario" EnableClientScript="False" Text="Campo de preenchimento obrigatório"> </asp:RequiredFieldValidator> </form> </body> </html> Analise agora o código para o arquivo de code-behind Default.aspx.cs: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Button1_Click(object sender, EventArgs e){ if(Page.IsValid){ // os dados foram validados? lblMensagem.Text = "A página foi enviada com sucesso."; } else{ lblMensagem.Text = "Houve um erro na página"; } } } Execute o exemplo e experimente clicar no botão sem preencher a caixa de texto. A página será enviada ao servidor e uma mensagem "Houve um erro na página" será exibida, juntamente com o conteúdo da propriedade "Campo de preenchimento obrigatório" do controle <asp:RequiredFieldValidator>. Isso foi possível devido ao teste que fizemos na propriedade Page.IsValid. Esta propriedade nos permite verificar se todos os controles de validação da página conseguiram realizar seu trabalho com sucesso. |
![]() |
Veja mais Dicas e truques de ASP.NET |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |