JavaScript - Não permitir sair da Janela sem fechá-la
7 respostas
A
alegiordani
Estou com um pequeno problema e vou usar um exemplo pra facilitar a explicação:
tenho um cadastro [01.jsp], e nele tenho um campo “cliente” para o usuário digitar qual o nro do cliente. Se o usuário não souber qual o nro do cliente, então existe uma pesquisa de clientes [02.jsp].
Quando o usuário clica na pesquisa, uma nova janela é aberta [02.jsp].
Antes do usuário voltar ao cadastro ele deve fechar esta janela de pesquisa. Ele deve selecionar qual o cliente para poder voltar, caso contrário, ele não deve ter acesso ao cadastro até que feche a pesquisa [02.jsp].
Este é o meu problema… eu posso utilizar “window.showModalDialog()” para abrir a pesquisa, funciona perfeitamente, porém, só no Internet Explorer, no Netscape isso não está disponível. Na pesquisa eu tentei tb utilizar onBlur=“window.focus();” mas não funciona legal… A solução que eu busco é algo que funcione no Netscape, já que para o internet explorer eu já tenho solução (showModalDialog()).
1° Na mesma função que tu utiliza para gerar essa janela secundaria, tu poderia desabilitar os campos do cadastro.
2° Após realizada a pesquisa e selecionado um registro, tu poderia incluir habilitar novamente os campos da página de cadastro e incluir os valores do registro selecionado, e por fim fecharia a janela.
3° Poderia realizar uma verificação no fechamento da janela no método unload da página indicando que os campos do cadastro ficarão indisponíveis até que um registro seja selecionado.
Espero que tenha ficado claro. 8)
B
bbazotti
Olá!
Caras, como faço o diálogo entre a janela aberta com a função
“window.showModalDialog()” e a janela que abriu essa?
Dialogo que eu digo é redirecionamento, traca de valores de “input” para “input”… assim como vc citou no seu problema…
Já agradeço de antemão…
Diogenes
Se eu nao me engano vc pode utilizar “window.opener” para referenciar a janela q abriu a 2.jsp …
sergiolopes
ARGH!!! IE-only!!! ECA!!!
_fs
bbazotti, ao criar uma popup normal, você pode guardar referência à mesma:
e, se não estou enganado, a propriedade “parent” de desntro do popup aponta para a página que a abriu.
B
bbazotti
Lipe, valeu pela dica… mas não consegui… e não é sintaxe… tentei de diversas formas… mas não me deixa retornar o valor de um input para a janela principal…
Diogenes
Tah bao…
Entao lavai…
Veja um exemplo do uso de window.opener, que mencionei anteriormente…
Ela faz uma referencia a 1.html utilizando window.opener, e com esta referencia o limite estah na imaginação do desenvolvedor…
Eu apenas criei dois campinhos hidden com um valor na janela filha e passei o valor pros texts da janela Pai…
Testei esse código no IE e no meu amado Mozilla FireFox…e tudo ok bbazotti…