【问题标题】:Copy div to a popup将 div 复制到弹出窗口
【发布时间】:2012-03-12 18:31:27
【问题描述】:

如何将整个 div 复制到弹出窗口?

我想做什么:

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);
    }

我不知道这是否是更好的方法。如果您认为/知道更简单的方法,请分享

提前致谢!

【问题讨论】:

  • 你在哪里尝试这个,JSfiddle ?
  • 不,VisualStudio (asp.Net + C# + Javascript)。

标签: javascript jquery popup copy


【解决方案1】:

修复其中一些错误,它会正常工作

  1. 脚本标签未正确关闭
  2. body 标签没有正确关闭
  3. querySelector 未定义。 (我正在评论那部分)

    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);
    }
    

【讨论】:

  • 为什么正文和脚本标签没有正确关闭?你能告诉我如何解决吗?
  • 检查您的代码 ` text += "
    \n/body>\n
【解决方案2】:

您可以使用 Jquery 模态弹出窗口

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

看看,它有你需要的功能。

它有几个你可以调整的事件来修改数据。

【讨论】:

    【解决方案3】:

    刚刚对此进行了测试,只要定义了querySelector,代码似乎就可以正常工作,并且它位于 document.ready 函数中,并且您正在实际的网络服务器上进行测试(如 WAMP/LAMP 等) .它不适用于 jsFiddle 等地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多