none
ScriptManager.RegisterClientScriptBlock dúvida!!!! Help!!! RRS feed

  • Pergunta

  • Pessoal, estou com o seguinte problema:

    estou desenvolvendo uma tela de pesquisa... explico: para alguns campos de um tela, nós temos um número de possibilidades muito grande o que inviabiliza a utilização de dropdownlist, portanto criamos um form que é chamado através da função jscript "ShowModalDialog". Esta tela apresenta um campo para digitarmos um valor e executa-se uma pesquisa que carrega um gridview e ao selecionar um item do grid essa tela fecha, retornando o valor selecionado para que um campo em específico seja carregado. Caso eu só tenha uma chamada dessa pesquisa, tudo bem. Mas em alguns caso eu tenho pesquisas "aninhadas", ou seja, de acordo com o resultado de uma pesquisa, ao selecionar uma nova pesquisa eu preciso passar o valor selecionado anteriormente para que a pesquisa já tenha um "pré-filtro". Estou utilizando Hiddenfields para guardar o valor da pesquisa. Segue a função BLOCKED SCRIPT

     

    function AbrirPesquisa(tipoPesq, parametros, txtcod, largura, altura, titulo)

    {

    var retorno="";

    retorno = showModalDialog("../Pesquisa/wbfPesqFrame.aspx?tipo=" + tipoPesq + "&param=" + parametros + "&W=" + largura + "&H=" + altura + "&TITULO=" + titulo, "wbfPopup"

    ,"help:no;status:no;scroll:yes;edge:raised;dialogWidth:"+ largura +"px;edge:raised;dialogHeight:"+ altura +"px");

    if(retorno!="" && retorno!=null)

    {

    this.document.getElementById(txtcod).value = retorno; // txtcod é o ID do Hiddenfield

    }

    }

     

    Neste caso a propriedade value do Hiddenfield é carregada e aproveito o evento ValueChanged para carregar o TextBox que mostrará o valor necessário. OK!!!

    Mas qdo vou executar a segunda pesquisa (aninhada), o Post ocorre antes da execução do jscript, assim ao fechar a tela de pesquisa não ocorre o evento ValueChanged, ele só ocorre ao clicar novamente no butão que chama a pesquisa. Vale ressaltar que como a segunda pesquisa eu dependo do valor selecionado na primeira, eu estou disparando o script através de:

    ScriptManager.RegisterClientScriptBlock("BLOCKED SCRIPTAbrirPesquisa("blablabla" & ValorDaPesquisa1))

    Outro ponto para observação é que estou usando updatepanels que contem o textbox que mostrará o resultado da pesquisa e o botão que chama a tela de pesquisa.

     

    Quem puder ajudar!!!!!!!! Isso já tá tirando meu sono!!!! Angry

    Obrigado

     

     

     

     

    quarta-feira, 25 de abril de 2007 19:25

Todas as Respostas

  •  

    Nâo entendi direito o que deseja, escreveu muito e foi pouco objetivo...

     

    Mas pelo pouco que entendi, vi que está querendo chamar uma ModalPopUp e nela fazer uma pesquisa correto?

     

    Porque não usa o ASP.NET AJAX Toolkit (ModalPopUp)???

     

    http://ajax.asp.net/ajaxtoolkit/ModalPopup/ModalPopup.aspx

     

    Veja, creio que te atenderá muito bem e não precisará escrever tanto JS.

     

     

     

     

     

    Espero ter ajudado!

    quarta-feira, 2 de maio de 2007 11:50