我的页面中有一个按钮。当用户点击该按钮然后我动态生成一个div,我动态分配一些文本和图像,并通过jquery插件打印该div。 我用一个名为 jquery.printElement.min.js
的jquery div打印插件做到了这一点我的代码在IE和FF浏览器中工作正常但在chrome中表现良好。如果没有将图像分配或加载到div中,则只打印文本。
这是我的代码,通过它我将图像和文本分配到div并通过jquery插件打印该div。
$("#Print").click(function () {
if (ImgPath != '') {
sHtml = "<div id='dvPrint' ><table>";
sHtml += "<tr><td>" + "<img src='" + ImgPath + "' height='600' width='400' border='0'/>" + "</td></tr>";
sHtml += "<tr><td>" + $('#lblTxt').html() + "</td></tr>";
sHtml += "</table></div>";
var $dvPrint = $(sHtml);
//alert(ImgPath);
$dvPrint.printElement(); // jquery div print plug-in
}
else {
alert("Image not found for print");
}
return false;
});
插件网址: - https://github.com/erikzaadi/jQueryPlugins/tree/master/jQuery.printElement
答案 0 :(得分:-1)
我不确定,为什么Chrome的表现如此,但我猜它与该插件有关
您可以尝试手动执行此操作。制作一个非常简单的页面,它将采用url参数,即imagePath
例如&#34; /printImage.php?src = path / img.jpg&#34;
...
<body onload="window.print()">
<?php
echo '<img src="' . $_GET["src"] . '"/>'
?>
...
打开一个带有该页面网址的弹出窗口,让它在加载时调用window.print()