JavaScript – Como obter dados de uma janela do tipo POPUP

JavaScript – Como obter dados de uma janela do tipo POPUP

Abaixo um exemplo de como abrir e obter dados de uma janela popup , neste caso, utilizei o potencial da linguagem orientada a objeto JavaScript.

Criei um projeto simples de exemplo, que pode ser baixado através do link:

https://skydrive.live.com/redir?resid=55163E95BEEDE6FC!5363&authkey=!ANqp-ajUBz-8oVU

Basicamente criei duas páginas, sendo que na página default.aspx , coloquei os seguintes scripts:

    function getValueModal() {

        //seta a página popup
        var url = './popup.aspx';

        //crio um novo objeto
        var obj = new Object();

        //crio e seto a propriedade nome
        obj.nome = '';

        //chamo a função (abaixo) que irá abrir a nova janela
        //note que set o objeto obj para receber o retorno
        //importante também é popular o  window.returnValue na função localizada no página popup. 
       obj = WindowOpenModal(url, obj, 600, 400);
        
        if (obj != null) {
            document.getElementById('txtexemplo').value = obj.nome
          }
    }


    //função para formatar e abrir a nova janela tipo modal / popup
    function WindowOpenModal(page, name, w, h) {
        var vLargura
        var vAltura
        if (w == null && h == null) {
            vLargura = ScreenWidth() - 200;
            vAltura = ScreenHeight() - 100;
        }
        else {
            vLargura = w;
            vAltura = h;
        }
        return window.showModalDialog(page, name, 'dialogwidth: ' + vLargura + 'px; dialogheight: ' + vAltura + 'px;resizable:no;center:yes;scroll:yes;');
    }

Na página popup.aspx , os seguintes scripts foram colocados

function Seleciona(nome) {

    var mObj = new Object();
    mObj.nome = unescape(nome);
    //define a propriedade do valor de retorno da janela aberta 
    window.returnValue = mObj;
    window.close();
}

Baixe o projeto exemplo e experimente…

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.