Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rcast

RequiredFieldValidators

Recommended Posts

Ola pessoal.

Estou tentando fazer com que um requiredfieldvalidator altere uma label no final do formulário para "Existem campos sem preencher".

Como é possível eu fazer isto?

Achava que os validators tinham algum evento "OnValidade" ou algo do genero mas não tem. Como eu posso inserir código quando dispara a validação?

Pesquisei sobre os customvalidators mas não é bem o que eu preciso.

Agradeço se alguem puder dar uma ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal.

Estou tentando fazer com que um requiredfieldvalidator altere uma label no final do formulário para "Existem campos sem preencher".

Como é possível eu fazer isto?

Achava que os validators tinham algum evento "OnValidade" ou algo do genero mas não tem. Como eu posso inserir código quando dispara a validação?

Pesquisei sobre os customvalidators mas não é bem o que eu preciso.

Agradeço se alguem puder dar uma ajuda

requiredfieldvalidator valida um campo de cada vez associado ControleToValidate, para colocar essa mensagem vá na propriedade ErrorMensagem e mude o texto q estiver lá

espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

então.. isso que eu to fazendo no momento.. mas quero que todos os requiredfieldvalidators da página mudem uma outra label que fica no final da página..

Compartilhar este post


Link para o post
Compartilhar em outros sites

então.. isso que eu to fazendo no momento.. mas quero que todos os requiredfieldvalidators da página mudem uma outra label que fica no final da página..

você pode colocar uma label no final da pagina e no evento do botão colocar [nomelabel].Text = "Mensagem que você quer"

mas n sei de dá pra relaciona com requiredfieldvalidators

Compartilhar este post


Link para o post
Compartilhar em outros sites

então.. isso que eu to fazendo no momento.. mas quero que todos os requiredfieldvalidators da página mudem uma outra label que fica no final da página..

você pode colocar uma label no final da pagina e no evento do botão colocar [nomelabel].Text = "Mensagem que você quer"

mas n sei de dá pra relaciona com requiredfieldvalidators

 

olha, eu não sei muito a respeito mas....

 

acho que você conseguiria fazer isso de forma mais eficaz com um custom validator, alterando o valor da propriedade text do label em questão de acordo com a validação do custom validator. No caso ele tem uma propriedade propria para campos em branco e dá maior liberdade de execuções.

 

estou mandando um exemplo muito simples que fiz para este caso... espero sinceramente que ajude

 

abraços

 

 

//html

<body>
   <form id="form1" runat="server">
   <div>      
       <table>
           <tr>
               <td>
                   <asp:Label ID="lblCampo" runat="server" Text="Infome Campo: "></asp:Label>
               </td>
               <td>
                   <asp:TextBox ID="txtCampo" runat="server" ValidationGroup="filtros"></asp:TextBox>
                           <asp:CustomValidator ID="CustomValidator1" runat="server" 
                       ErrorMessage="*" ControlToValidate="txtCampo"  [color="#FF0000"]ValidateEmptyText="true"[/color]                        OnServerValidate="CustomValidator1_ServerValidate" Display="Static" ValidationGroup="filtros"></asp:CustomValidator>  
               </td>
           </tr>
           <tr>
               <td colspan="2">
                   <asp:Button ID="btnBotao" runat="server" Text="Confirmação" 
                       CausesValidation="true" onclick="btnBotao_Click"/>
               </td>
           </tr>
           <tr>
               <td colspan="2">
                   <asp:Label ID="lblMsgErros" runat="server"></asp:Label>
               </td>
           </tr>
       </table>
   </div>
   </form>
</body>

 

//code

namespace WebApplication2
{
	public partial class LabelExibeErro : System.Web.UI.Page
	{
		protected void Page_Load(object sender, EventArgs e)
		{
		}

		protected void CustomValidator1_ServerValidate(object sender, ServerValidateEventArgs e)
		{
			if (txtCampo.Text == String.Empty || txtCampo.Text == "")
			{
				//seta validação como false, pag não será válida 
				e.IsValid = false;
				//label para msg de erros
				lblMsgErros.Text = "Campo vazio!!!";
			}
		}

		protected void btnBotao_Click(object sender, EventArgs e)
		{
			Page.Validate("filtros");
			if (Page.IsValid)
			{
				lblMsgErros.Visible = true;

				lblMsgErros.Text = "Campo válido!!!";
				//executa funções
			}

		}

	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que você nao vai conseguir fazer isso, pois as propriedades dos validators são bem claras...

 

Se você quiser mudar o text do label, vai ter que fazer a vericação no braço mesmo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora, ao invés de alterar um label, você poderia usar ValidatorSummary, q exibe as MessageError dos Validators.... fica melhor, e usar o exemplo q eu t dei... eu até já testei e funciona mas, c não passar pelo evento do validator, ao invés de colocar

 

 

Page.Validate()
if (Page.IsValid){}

coloque:

NomeDoCustomValidator.Validate()
if (NomeDoCustomValidator.IsValid) {}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.