Ir para conteúdo

POWERED BY:

Arquivado

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

jorge dias

Botao limpar - Javascript ou nao?!

Recommended Posts

Viva ppl da lista!

 

Espero que alguem da lista me consiga ajudar a resolver este pequeno problema.

 

Estou a trabalhar em paginas aspx e no final de um formulario tenho um botao limpar.

Esse botao funciona, naturalmente, para limpar todas as caixas de texto, dropdownlist, etc desse formulario. Esse botao possui um evento que vai disparar uma mensagem antes de apagar os dados:

 

onclientclick = if (!confirm('Confirma limpeza de dados?')) return false;

 

Ele dispara e funciona muito bem, mas ele faz isso caso os campos estejam vazios tambem.

 

Como poderei fazer para ele disparar uma mensagem diferente para quando todos os campos estejam vazios? Tipo "Nao existem campos para limpar!"

 

Caso possa fazer isto de outra forma, atraves do ficheiro aspx.vb, como poderei fazer?

 

Caso os campos estiverem vazios, ele dispara a mensagem que estao vazios e nao necessitam de ser limpos. Caso contrario, limpa (que e o que ja faz).

 

Obrigado pela vossa atencao e se possivel resposta!

 

Cumps,

JD

Compartilhar este post


Link para o post
Compartilhar em outros sites

Movido Plataforma .NET http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET » Web Applications

 

jorge, Seja Bem Vindo ao Fórum Imasters, de uma olhada em nossas regras: http://forum.imasters.com.br/index.php?act=Help

 

O que você pode fazer é uma função que percorra todo seu formulário, pesquise sobre foreach aqui no fórum mesmo já tem alguns tópicos sobre isso.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela resposta e peco desculpa por ter colocado este post na categoria errada.

 

Eu ja uso o for each:

dim ctl as control
For Each ctl In controlP.Controls

   If (TypeOf ctl Is TextBox) Then
				DirectCast(ctl, TextBox).Text = String.Empty
			End If
		Next

Mas a minha duvida e como usar isto para disparar mensagens como o javascript faz, para o caso dos campos estarem ja limpos ou nao. Nao faz sentido limpar campos que estao vazios.

 

Tenho este codigo que se abaixo que poderia ser chamado, mas o problema e como usa-lo em cima. Como poderei utilizar o ctl do tipo control para saber se o conteudo esta vazio ou nao, ja que o intellisense nao tem uma propriedade .value ou . text?

Dim strMessage As String
			strMessage = "Os campos estao vazios!"
			Dim strScript As String = "<script language=JavaScript>"
			strScript += "alert(""" & strMessage & """);"
			strScript += "</script>"
Como fazer isso no codigo em cima?

 

Obrigado uma vez mais pela possivel ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi sua dúvida, você quer limpar os campos que estejam preenchidos:

 

dim ctl as control
For Each ctl In controlP.Controls
   If (TypeOf ctl Is TextBox) Then
		 if(DirectCast(ctl, TextBox).Text <> "" Then
				 DirectCast(ctl, TextBox).Text = ""
		 End If
   End If
Next

Abraços...

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.