Dica ASP.NET para alerta e nova página

Olá, pessoal, hoje vou falar um pouco das coisas simples, mas que se tornam complicadas quando colocamos o objeto Ajax do .NET na aplicação. Um exemplo disso são as mensagens em javascript, ou as que surgem no momento de abrir um popup. Antes de colocar o objeto <ScriptManager> ou o <ToolkitScriptManager>, todas as mensagens javascript de alerta ou script para abrir popup funcionam sem qualquer problema.

Depois de colocar as tags e usar o <UpdatePanel> e o <ContentTemplate>, aquelas mensagens que funcionam deixam de funcionar apresentando apenas um erro na tela. Todo esse processo é mostrado quando a mensagem javascript está dentro do código VB.NET ou C#.NET.

O objetivo é mostrar uma forma simples e fácil de como deixar funcionando os comandos javascripts dentro do C#.NET.

Usado: Linguagem C#.NET, ferramenta Visual Studio 2010, plataforma ASP.NET (web).

A mensagem deve vir de dentro do código de programação, como na imagem 1. Veja no código 1 como tem que ficar.

Imagem 1

Ao clicar no botão da página aspx, o campo não foi preenchido e, de acordo com a regra do sistema, precisa ser preenchido pelo usuário. Foi usado o ScriptManager.RegisterClientScriptBlock passando alguns parâmetros particulares para exibição da mensagem mantendo ainda os dados da tela aspx.

ScriptManager.RegisterClientScriptBlock(this, this.GetType(),”sua-mensagem”, “alert(‘sua mensagem qualquer’)”, true);

Código 1

Analisando o Código 1, veja que a parte onde fica “sua-mensagem” é apenas um controle, como se fosse um id de objeto de tela, ou seja, não deve ser repetido na mesma página. Não é necessário passar o <script>javascript:</script>, basta colocar o alert ou confirm para quem usa.

Para exibir uma mensagem na tela pegando alguma variável do próprio C#.NET, basta utilizar as aspas e a concatenação:

String situacao = “meu nome”;

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), “mensagem-1”, “alert(‘” + situacao + “‘);”, true);

Código 2

Esse código resolveu o meu problema para exibição de alerta javascript na página. Ele pode resolver o seu também. Finalizando, para abrir outra página executando dentro do código C#.NET, veja o código seguinte:

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), “abrir-1”, “window.open(‘pagina.aspx’)”, true);

Código 3

O Código 3 executa o window.open chamando a página. Em resumo, todo código javascript que quiser colocar dentro do C#.NET pode ser colocado de acordo com os exemplos acima.

Fonte: IMaster

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *