alemex 0 Denunciar post Postado Fevereiro 12, 2008 salve salve moçada... tô com o seguinte problem: tenho uma aplicação que simula um desktop online, e por essa questão de simular um desktop online eu preciso usar AJAX, então optei por fazer ela utilizando o AJAX Extensions, só que estou me deparando com o seguinte problema: Quando executo um postback na página, seja por um botão ou por qualquer outro controle, todos os UpdatePanels são atualizados, até ai não há problema nenhum atualizar todos eles, o problema é que quando eles são atualizados, na hora em que o AJAX pega o HTML da página para enviar ao servidor e o servidor retorna o HTML para o client, esse HTML está como se eu tivesse acabado de iniciar a utilizar minha aplicação, ou seja, todo javascript para ajeitar o HTML que eu executei após o PageLoad do aspx é perdido. Então vim aqui para ver se alguém me ajuda com uma solução, por acaso tem como eu dar o Update de um UpdatePanel pegando o atual HTML (no qual já foi executado javascript)? para quem não entendeu muita coisa vou dar um exemplo aqui: tenho uma Label do asp (runat=server) e uma tag SPAN que não é runat=server dentro de um UpdatePanel, então quando carrega minha página digamos que na label eu faça o seguinte, Label.Text = "Qualquer texto", e depois de setar o texto da label eu chamo um método javascript pelo ScriptManager para setar o texto da minha tag SPAN (innerHTML), então digamos que a página já foi carregada pelo servidor, então ela será desenhada na tela, portanto apenas a label do servidor terá algum texto escrito na tela, enquanto a tab span só será preenchida quando o método javascript for chamado no client, o método javascript só será carregado quando a página aspx do servidor já estiver sido desenhada no browser, e então quando eu efetuar algum postback na página esse update panel vai considerar só o html que existia até o momento em q o servidor desenhou a página no browser, ou seja, antes de executar meu javascript.... [off] JESUS LORD!! deu serviço pra escreve isso ein... UIEHeiuheui.... [/off] espero que alguem me ajude!!! PLEASE!!!!!!!!!! Compartilhar este post Link para o post Compartilhar em outros sites
DSerma 19 Denunciar post Postado Fevereiro 12, 2008 Tópico movido: ASP http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Fevereiro 12, 2008 Movido Plataforma.Net http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma.Net //Web Applications Tentando entender... [/] Esses objetos que retornam aos valores iniciais, esses valores são setados no Page_Load de sua página? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
alemex 0 Denunciar post Postado Fevereiro 13, 2008 isso mesmo... todos os valores setados nos objetos são carregados durante o pageload, ou mais tarde por um callback de algum controle postback... saka? a questão é q todo o javascript que eu executo para alterar o HTML após o load da minha página é perdido nos próximos postback's... Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Fevereiro 13, 2008 O problema é que qualquer evento que seja executado na página antes ele percorre o Page_Load. Para corrigir isso utilize a clausula do PostBack. No seu Page_Load coloque: If Not IspostBack Then 'Alimenta seus objetos End If Acredito que irá funconar. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
alemex 0 Denunciar post Postado Fevereiro 13, 2008 O problema é que qualquer evento que seja executado na página antes ele percorre o Page_Load. Para corrigir isso utilize a clausula do PostBack. No seu Page_Load coloque: If Not IspostBack Then 'Alimenta seus objetos End If Acredito que irá funconar. Abraços... sorry amigo... mas meu problema não tem haver com isso.... a questao de verificar se é um postback ou nao não influencia no meu problema.... acho q você nao entendeu muito bem meu problema... a questao é que qualquer javascript que eu chame dentro do meu page_load so é executado após terminar o page_load, portanto o html que o browser irá desenhar e salvar para enviar ao servidor mais tarde será o html sem a execução dos javascripts chamados no page_load.... e aproveitando já vou postar a solução que eu arrumei... é meio POG (programação orientada a gambiarra), mas serviu... achei na propria documentação do ajax.asp.net: quando sua página carregar adicione um handler que será executado sempre após um postback, no meu caso coloquei no onload do body... exemplo: Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(PageLoadedEventHandler); no caso o PageLoadedEventHandler será o método q será executado no client após os postbacks da página.... vlw aew galera pela ajuda!!! aquele abraço.... Compartilhar este post Link para o post Compartilhar em outros sites