我想在有人点击打印时多次打印这个iframe。这是我到目前为止,但它只打印一次。有没有人有什么建议?提前谢谢。
$("#printing").on('click',function(){
var printYesNo = 1;
alert("hi");
for(var count = 1; count < 3; count++) {
$('body').append('<iframe src="flyer.php?userNow='+count+'" id="printIFrame" name="printIFrame"></iframe>');
$('#printIFrame').bind('load',
function() {
window.frames['printIFrame'].focus();
window.frames['printIFrame'].print();
}
);
}
});
答案 0 :(得分:2)
你给每个元素提供相同的ID和名称,然后重点打印等。这看起来似乎不对,并且执行方式略有不同会在某些浏览器中触发多个打印对话框(打印iFrame不是跨浏览器):< / p>
$("#printing").on('click', function () {
for (var count = 1; count < 13; count++) {
(function(k) {
$('<iframe />', {
id : 'printIFrame' + k,
name : 'printIFrame' + k,
on : {
load: function() {
this.contentWindow.focus();
this.contentWindow.print();
}
},
src : 'flyer.php?userNow=' + k,
}).appendTo('body');
})(count);
}
});