JavaScrip não funciona com o AJAX (ASP Net)

Se você já utilizou os componentes AJAX da Microsoft, já deve ter tido esse mesmo problema. Quando você utiliza o UpdatePanel por exemplo, como tudo na página é atualizado de forma dinâmica (sem refresh), o ClientScript perde a sua funcionalidade pois depende de um PostBack inteiro da página para que assim execute os scripts. Pesquisando um pouco, encontrei a solução: a classe ScriptManager. A forma de utilização da classe é praticamente a mesma no ClientScript, veja:

Registrando um script sem o AJAX com o ClientScript.

ClientScript.RegisterClientScriptBlock(
   type, key, script, addScriptTags);

Ex.:

Page.ClientScript.RegisterStartupScript(
   Page.GetType(), "Alert", "alert('Olá Mundo')", true);

Registrando o script com AJAX com o ScriptManager

ScriptManager.RegisterStartupScript(
   control, type, key, script, addScriptTags);

Ex.:

ScriptManager.RegisterStartupScript(
   Page, Page.GetType(), "Alert", "alert('Olá Mundo')", true);

A classe ScriptManager está no namespace System.Web.UI, mas é preciso acrescentar  uma referência à dll System.Web.Extensions.dll

Artigos relacionados

Total de visitas: 2581.
Esta entrada foi publicada em .Net, Ajax e marcada com a tag , , , , . Adicione o link permanente aos seus favoritos.

Uma resposta a JavaScrip não funciona com o AJAX (ASP Net)

  1. Pingback: Alert no asp.net

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>