Exibir Dados cadastrados em outra tela

27/04/2010

Boa tarde,

Tenho uma página que estou fazendo alguns testes do componente Daily (componente para Compromissos), consegui configurar ela corretamente.

Agora vem a dúvida:

Criei uma outra página para cadastrar os horários do compromisso, como posso fazer para, quando o usuário fecchar essa janela, de um reload na página anterior (onde se encontra o Scheduler)?

Estou chamando a página de cadastro através de javascript (window.open('NomePagina.aspx', '', 'tamanho'); ) e fecho através de javascript tbm (window.close(); )

Facc

Respostas

28/04/2010

Marcio

Você pode submeter a página que abriu o pop-up com:
window.opener.submit();

Responder Citar

28/04/2010

Facc

Onde eu coloco esse comando? Pois no OnClientClick do botão já coloquei o window.close();
Responder Citar

29/04/2010

Melantonio Currículo

Colaca assim:

OnClientClick="window.opener.submit();window.close();"

falow
Responder Citar

29/04/2010

Facc

continua não atualizandoo a pagina pai nem fechando a janela filha
Responder Citar

29/04/2010

Facc

Segue a imagem do site
qndo eu clico em alguma célula, ele me abre uma página em modal (feita com Thickbox da JQuery)
mas ao clicar em salvar, está me abrindo essa página maximizada. o código com botão salvar é simples, faço uma conexao com BD mysql e executo um comando.



Responder Citar

29/04/2010

Pedro Otávio

  De uma olhada nesse site, ve si ajuda

http://www.mediacollege.com/internet/javascript/page/reload.html
Responder Citar

30/04/2010

Marcio

Tá dando algum erro de JavaScript?
Porque eu faria a mesma coisa que o Tiago falou abaixo: javascript:windo.opener.submit();window.close();
Responder Citar

30/04/2010

Netasper

Amigo, so usar o window.opnner mesmo. Assim consegue "ver" os controles na pagina pai...   []s
Responder Citar

30/04/2010

Facc

Deixa ver se consigo me expressar melhor

tenho uma tela onde possui os componentes MonthCalendar e DayPilotSheduler, ao clicar na célula eu executo, através de JavaScript esse código

dialogModal('Cadastro.aspx?Start=', 'Cadastro de Horários', '500', '200');


no HTML da página colocquei essa function, entre as TAGs Body
<script>
  function dialogModal(url, nome, nrTamanho, nrLargura)
  {
     eval(window.showModalDialog(url, nome, 'Resizable:no, DialogHeigth:'+nrTamanho+'px ; DialogWidht:'+nrLargura+'px; Edge:raised; Help:no; Scroll:no; Status:no; Center:yes;'));
     //eval(caixa);
  }
</script>


até aí sem problema, consigo abrir em modal a página que eu quero. Nessa página cadastro, possui os componentes DropDownList, TextBox, RadioButton e 2 Buttons. No botão SALVAR tenho esse código

MySqlConnection cnn = new MySqlConnection(cnnString);
        string SQL = "insert into Compromisso (Name, Start, End) Values ('" + ddlComprador.SelectedItem + " - " + txtAssunto.Text + "', '" + txtStart.Text + "', '" + HoraFinal() + "')";

        try
        {
            cnn.Open();
            MySqlCommand cmd = new MySqlCommand(SQL, cnn);

            cmd.ExecuteNonQuery();            
        }
        catch (Exception err)
        {
            Response.Write(err.Message);
        }
        finally
        { 
            cnn.Close();
        }

tbm executa sem problemas. O problema começa no botão Fechar. Gostaria que, ao clicar, ele atualizasse a página anterior e fechasse, mas não está acontecendo isso, no FireFox, não fecha a página e o IE abre a página cadastro.aspx novamente.

Coloquei o seguinte código no OnClientClick do botão FECHAR

window.opener.submit();window.close();


Alguem poderia me arrumar uma solução?
Responder Citar

30/04/2010

Marcio

Ah tá!
window.showModalDialog funciona diferente mesmo, ele devolve um valor para uma variável.
Acho que é o caso de você passar como parâmetro para a sua função que faz a chamada ao showModalDialog, e ela fazer a atualização.
Responder Citar

30/04/2010

Marcio

Lembrei de algo aqui para o showModalDialog() tenta usar aí "windo.parent.submit()";
não sei se vai dar certo porque a janela Modal é filha do formulário que a chamou.
Talvez a solução seja aquela anterior que eu falei mesmo (na função que chama o Modal fazer o reload).

[]s

Responder Citar

30/04/2010

Facc

Ah tá! window.showModalDialog funciona diferente mesmo, ele devolve um valor para uma variável. Acho que é o caso de você passar como parâmetro para a sua função que faz a chamada ao showModalDialog, e ela fazer a atualização.


Poderia me auxiliar? Pois tentei dessa forma e não resolveu

<script>
  function dialogModal(url, nome, nrTamanho, nrLargura)
  {
     var retorno = "";
     retorno = window.showModalDialog(url, nome, 'Resizable:no, DialogHeigth:'+nrTamanho+'px ; DialogWidht:'+nrLargura+'px; Edge:raised; Help:no; Scroll:no; Status:no; Center:yes;');
     
     if (retorno != "" && retorno != null)
     {
        window.location.reload();
     }
  }
</script>

Responder Citar

03/05/2010

Marcio

Não rapaz.
Quando falei reload tava dizendo para você submeter a página.
document.forms[0].submit();

Responder Citar