Rodrigo Resende
Rodrigo Resende

Reputation: 23

Copy div to a popup

How can I copy an entire div to a popup window?

What I`m trying to do:

function ImprimirTela() {
        var text = "<html>\n<head>\n<title>Impressão Guia</title>\n";
        text += "<script src='~/js/jquery-1.4.2.js' type='text/javascript' language='javascript' />\n";
        text += "</head>\n<body>\n";
        text += "<input type='button' value='Imprimir esta página' onclick='window.print();' style='float: right' />\n";
        text += "<div id='conteudo'>\n";

        text += $("#divDadosBasicos").html($(querySelector).html());
        text += $("#divHipotesesDiagnosticas").html($(querySelector).html());

        text += "</div>\n/body>\n</html>";
        var newWindow = window.open('', 'Impressao', 'width=900,height=700');
        newWindow.document.write(text);
    }

I dont know if this is the better way to do it. If you think/know a easier way to do it, please share

Thanks in advance!

Upvotes: 2

Views: 1490

Answers (3)

Nemoy
Nemoy

Reputation: 3427

Fix some of these errors and it will work fine

  1. Script tag is not closed properly
  2. body tag not closed properly
  3. querySelector is not defined. (I am commenting that portion)

    function ImprimirTela() {
        var text = "<html>\n<head>\n<title>Impressão Guia</title>\n";
        text += "<script src='~/js/jquery-1.4.2.js' type='text/javascript' language='javascript'></script>\n";
        text += "</head>\n<body>\n";
        text += "<input type='button' value='Imprimir esta página' onclick='window.print();' style='float: right' />\n";
        text += "<div id='conteudo'>\n";
        //define querySelector
        //text += $("#divDadosBasicos").html($(querySelector).html());
        //text += $("#divHipotesesDiagnosticas").html($(querySelector).html());
    
        text += "</div>\n</body>\n</html>";
        var newWindow = window.open('', 'Impressao', 'width=900,height=700');
        newWindow.document.write(text);
    }
    

Upvotes: 2

adeneo
adeneo

Reputation: 318342

Just tested this, and the code seems to be working just fine as long as querySelector is defined, and it's in a document.ready function and you are testing this on an actual webserver (like WAMP/LAMP etc.). It will not work in places like jsFiddle etc.

Upvotes: 0

Har
Har

Reputation: 5004

You could use a Jquery Modal Popup

http://jqueryui.com/demos/dialog/

Check it out, it has the functionality that you need.

It has several events you can tweak to modify the data.

Upvotes: 0

Related Questions