Popup (N Duvidas) Me Ajudem!

12 respostas
B

Colegas

Sei que o tópico é mais que manjado mas eu pesquisei aqui e num consegui sanar minhas dúvidas :

Meu Form JSP de cadastro preciso pesquisar a Cidade do Cadastrado. Clico no botão de pesquisa e disparo a Funcçao POPUP :

function abrePopup(acao){  
	     window.open('popupCidade.jsp','Popup','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=yes, width=650, height=380');  
	 }

Eu tenho as seguintes dúvidas :

1 - Eu consigo popular uma tela de pesquisa fazendo submit no Form através de SERVLET mas em Popup, como popular ?

2 - Conseguindo resolver o problema de popular a Popup, uma vez lá na popup como que eu transfiro a descricao da cidade para o Form que chamou a Popup ??? + uma vez eu consigo fazer isso em Form comum, em popup eu tô enrolado.

3 - Eu não posso apagar as informações do meu Form e dando submit a POPUP vai apagar os campos ?

abs

Bob

12 Respostas

Pedrosa

Um poupup é uma tela normal
Para devolver o valor de um poupup para a tela que chamou use a função opener

Ex:

function devolve(){
    window.opener.frmDadosCliente.txtRua.value = document.frmCep.txtRuaCep.value;
    window.close();
}
B

Opa, brigado Pedrosa mas veja bem …

No meu form normal eu faço o submit mandando através de uma função :

function enviar(acao){
		document.forms[0].acao.value = acao;
		if (document.forms[0].acao.value=='pesquisar'){
			document.forms[0].submit();

e lá no Servlet eu chamo a JSP correspondente

mas no caso do popup, como na função que me passaram, quem chama a tela é a própria função :

function abrePopup(acao){  
	     window.open('popupCidade.jsp','Popup','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=yes, width=650, height=380');  
	 }

Neste caso, como dar submit ?

Outra coisa, indo no servidor , ele não irá apagar meus campos ?

:oops:

Pedrosa

Voce pode enviar para um Servlet normal e não redirecionar para lugar nenhum o form da poupup e fechar a com window.close().

B

Desculpe mas num tô entendendo :frowning:

Voce pode enviar para um Servlet normal e não redirecionar para lugar nenhum

Enviar como ? Sem precisar window.open(‘popupCidade.jsp’ … ?

Lá no meu Servlet eu pesquiso o Banco mas não envio para o popupCidade ?

Não entendi.

Tentei

function abrePopup(acao){  
	     window.open('popupCidade.jsp','Popup','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=yes, width=650, height=380');
		 document.forms[0].submit();
		 return false;	       
	 }

Ele até abre a popup mas a tela de cadastro chamadora fica em branco !!!

:frowning:

renatocustodio

Acho que o que ele quis dizer foi que poderia fazer

window.open('AlgumServlet' ....)
B

Ué colega,será ?

Mas window.open Significa, grosseiramente falando Janela.Abrir

mas vou tentando aqui

brigado

Bob

renatocustodio

Exato, vc tem que passar a url do recurso que quer abrir na pop, no caso, o resultado de um servlet…

Então, com javascript, dentro de algum botão do popup usa o window.opener, que faz referencia a janela que abriu essa popup, assim como o cara lá em cima te explicou.

Pedrosa

Na sua poupup envie para Servlet de forma normal e redirecione para tela jsp, nao sei como vc usa por request sei la, eu aconselharia a usar a Ajax para nunca mais submeter páginas.

De uma olhada no prototype, pode facilitar muito sua vida:
http://www.prototypejs.org/learn/introduction-to-ajax

O VRaptor também facilita a construção Ajax:
http://www.vraptor.org/pt/ajax.html

B

Devagar gente !

Eu estou apanhando é em abrir/popular uma tela Popup !!!

Abrir até que não que já consegui, o problema mesmo é em Popular !!!

Num tô sabendo é como submeter/abrir junto !

Ainda não cheguei ao problema de fechar a popup e devolver os campos para a JSP chamadora !! hehehe

Agora, Esta de não submeter mais ?!?!?!? Eu até estou mexendo já com AJAX (Faço um ou outra requisição) mas uma tela com 50 campos, como utilizo AJAX para enviar todos estes campos pro meu SERLVET ?!?!?!?

Agora, voltarndo para o Popup ainda não consegui !!!

Tô meio enrolado nisso !

Bob
:oops: :oops: :oops:

B

Tá acontecendo 2 problemas :oops: :oops:

1º Eu estou chamando minha POPUP via JS assim :

function abrePopup(acao){  
		document.forms[0].acao.value = acao;
	     window.open('popupCidade.jsp','Popup','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=yes, width=650, height=380');
		 document.forms[0].submit();
		 return true;	       
	 }

Ele abre a tela de popupCidade VAZIA mas, atrás dela, ele abre a mesma tela, já populada, em modo normal, sem ser POPUP !!! :cry:

2º problema, ele LIMPA (Branqueia) a tela chamadora do POPUP ao dar o submit !!

Socorro !!!

Bob

V

Amigo, vou te ajudar ± pois estou com um problema parecido com este seu.

Vou pegar uma carona com seu problema (heheheh)

Quanto a abrir a POPUP e logo após abrir outra tela e “branquear” a tela, tudo , tudo se deve (aqui passei algo parecido com isto) ao componente que vc está utilizando para chamar a POPUP !
Você deve estar chamando esta POPUP através de IMAGE BUTTON <input type=“image” …/>
Caso afirmativo, troque para isso deve resolver.

Agora quanto a popular a POPUP tô garrado nisso também …

Vou pegar carona em seu problema !

Vimieiro

B

Uuu, tá começando a dar certo !

Realmente era input image
troquei para IMG e realmente parou de “branquear” a tela chamadora

Mas como que eu POPULO este POPUP ?

Submito ou não o FORM ???

Criado 30 de abril de 2008
Ultima resposta 5 de mai. de 2008
Respostas 12
Participantes 4