jquery - 如何使用 jquery 打印动态 div html 元素

标签 jquery

我试图使用 printElement() 函数打印动态 div html 元素,但是当我遇到问题时......我的代码如下

$("#btnPrint").click(function () {
                if (ImgPath != '') {
                    sHtml = "<div id='dvPrint'><table>";
                    sHtml += "<tr><td>" + "<img src='" + ImgPath + "' border='0'/>" + "</td></tr>";
                    sHtml += "<tr><td>" + $('#lblTxt').html() + "</td></tr>";
                    sHtml += "</table></div>";
                    alert($('#dvPrint').html());
                       $("#element").printElement('#dvPrint');
                }
                else {
                    alert("Image not found for print");
                }
                return false;
            });

当我只是提醒 alert($('#dvPrint').html()); 它什么也不显示。那么 printElement() 是如何工作的。我可以将我的动态 div 附加到正文中......我只需要生成 div 并通过 jquery 打印其中的内容......我需要帮助。谢谢

最佳答案

您只是格式化了 html 字符串,并没有将其附加到 DOM。您无法使用 $('#dvPrint') 找到它。使用 $(sHtml).html() 获取格式化的 html。

结果打印将是:$(sHtml).printElement();

$("#btnPrint").click(function () {
    if (ImgPath != '') {
        sHtml = "<div id='dvPrint'><table>";
        sHtml += "<tr><td>" + "<img src='" + ImgPath + "' border='0'/>" + "</td></tr>";
        sHtml += "<tr><td>" + $('#lblTxt').html() + "</td></tr>";
        sHtml += "</table></div>";
        var $dvPrint = $(sHtml);
        alert($dvPrint.html());
        $dvPrint.printElement();
    }
    else {
        alert("Image not found for print");
    }
    return false;
});

关于jquery - 如何使用 jquery 打印动态 div html 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7608110/

相关文章:

jquery - 如何在 jQuery 中检查复选框

javascript - js获取横向滚动事件

jquery - 使用 Angular 5 中的指令激活省略号时如何激活工具提示?

jquery - 我如何在 ajax 应用程序中找到未使用的 css?

javascript - 高性能 dom 添加和删除

javascript - Jquery cookie函数未找到空值

javascript - 使用if条件滚动到orientationchange上的元素jQuery

javascript - 如何在 chrome 扩展中使用 jQuery?

Javascript日历在再次选择日期时取消选择日期而不是重新选择它

javascript - 基于网络的浏览器 GPS 位置