Exibir Dados cadastrados em outra tela

.NET

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(); )
Fábio Cruz

Fábio Cruz

Curtidas 0

Respostas

Marcio Silveira

Marcio Silveira

27/04/2010

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

GOSTEI 0
Fábio Cruz

Fábio Cruz

27/04/2010

Onde eu coloco esse comando? Pois no OnClientClick do botão já coloquei o window.close();
GOSTEI 0
Tiago Melantonio

Tiago Melantonio

27/04/2010

Colaca assim:

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

falow
GOSTEI 0
Fábio Cruz

Fábio Cruz

27/04/2010

continua não atualizandoo a pagina pai nem fechando a janela filha
GOSTEI 0
Fábio Cruz

Fábio Cruz

27/04/2010

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.



GOSTEI 0
Pedro Maitan

Pedro Maitan

27/04/2010

  De uma olhada nesse site, ve si ajuda

http://www.mediacollege.com/internet/javascript/page/reload.html
GOSTEI 0
Marcio Silveira

Marcio Silveira

27/04/2010

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

Netasper

27/04/2010

Amigo, so usar o window.opnner mesmo. Assim consegue "ver" os controles na pagina pai...   []s
GOSTEI 0
Fábio Cruz

Fábio Cruz

27/04/2010

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?
GOSTEI 0
Marcio Silveira

Marcio Silveira

27/04/2010

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.
GOSTEI 0
Marcio Silveira

Marcio Silveira

27/04/2010

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

GOSTEI 0
Fábio Cruz

Fábio Cruz

27/04/2010

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>

GOSTEI 0
Marcio Silveira

Marcio Silveira

27/04/2010

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

GOSTEI 0
POSTAR