Fórum TreeList #3352

06/03/2009

0

Coloquei um Page.ClientScript.ResgiterScriptStartup no evento SelectedNodeChange da treelist, porem o javascript nao é registrado e no html nem aparece o codigo do objeto treelist. O que esta acontecendo?
Nefrodata Ltda

Nefrodata Ltda

Responder

Posts

06/03/2009

[devmedia .net]

Opa, tudo bem ? Estou aqui para lhe ajudar...   Se eu entendi bem o que deseja, segue abaixo a solução..   O RegisterScriptStartup é um método que registra um script no onload da pagina, por esse motivo não funcionará dentro do método selected da treeview.   Para que um script seja registrado em um determinado evento você deve utilizar o método RegisterOnSubmitStatement.   Aguardo seu retorno,   Abraços   Carlos Jr
Responder

Gostei + 0

06/03/2009

Nefrodata Ltda

Bom meu amigo conseguimos resolver 50% do problema. O que acontece com nossa aplicação é o seguinte, estamos utilizando updatepanel, então o RegisterStartupScript não funciona porque acredito eu que o updatepanel não permite um "reload" da pagina apesar de executar on postback. Porém com o RegisterOnSubmitStatement funciona se eu coloca-lo no evento PageLoad da pagina porém eu preciso que esse comando seja executado apenas se eu clicar na treeview e não se eu clicar em outro componente da minha pagina como por exemplo um botao qualquer, tem como eu fazer algum controle disso, por exemplo usando um hidden field ou vericando qual o tipo de componente que gerou esse postback??   Aguardo uma resposta o mais breve possivel   Grato Julio
Responder

Gostei + 0

06/03/2009

[devmedia .net]

E aí, blz ? Vamos começar do começo cara...   O que você precisa fazer exatamente.. Executar um alert ao clicar no botão ? executar uma função javascript ?   Vamos ver sua necessidade e te falo se tem outra saida ou teremos que continuar nesses passos.   O update panel barra muitas coisas, você terá que criar triggers para usar métodos javascript..   vá nas propriedades do Update panel e adicione as triggers apontando para o objeto que irá executar a função js.   Tente fazer isso...   fico no aguardo das informações   Abraços   Carlos Jr
Responder

Gostei + 0

06/03/2009

Nefrodata Ltda

Meu caro amigo Carlos, vou tentar te explicar o que preciso exatamente.   Tenho uma página quem tem um UpdatePanel, onde tenho uma treeview, eu quero quando eu selecionar um item da treeview abrir alert('mensagem').Basicamente é isso. eu acrescentei uma trigger no meu updatepanel colocando a treeview e o metodo selectedchanged mas não funcionou eu coloquei a chamada ClientScript.RegisterOnSubmitStatement(this.GetType(), "showPopup", "alert('ola');"); no evento selectedchanged da treeview mas não funcionou. Era isso mesmo que eu tinha que fazer ou era o contrario colocar todos os outros metodos como trigger menos esse?   Aguardo uma resposta   Julio
Responder

Gostei + 0

06/03/2009

Nefrodata Ltda

Bom fiz mais um teste aqui e consegui fazer funcionar em um projeto de teste mas no meu projeto oficial não funciona, fiz o seguinte:   Acrescentei um trigger (PostBackTrigger associando ao controle (TreeView))   com isso no meu projeto de teste funcionou perfeitamente porem no meu projeto oficial não quer funcionar.   Nesse caso agora ao inves de usar o RegisterOnSubmitStatement estou usando o RegisterStartupScript no projeto de teste esta funcionando no projeto oficial não funciona o que pode ser agora???    
Responder

Gostei + 0

06/03/2009

Nefrodata Ltda

Carlos já consegui resolver o problema, o problema era que o updatepanel não gera load na pagina mesmo então o RegisterStartupScript não é executado, fiz o seguinte para resolver executei o RegisterStartupScritp no ScriptManager e já esta funionando.   ScriptManager.RegisterStartupScript(this, this.GetType(), "show", "alert('ola!')", true);   Valeu   Abracos  
Responder

Gostei + 0

07/03/2009

[devmedia .net]

Ótimo, precisando estaremos sempre por aqui.   Grande Abraço   Carlos Jr
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar