基於DucFilan的和Frankusky的建議,
得到數據這是需要被打印後,追加該數據在一定的div和隱藏等元素預期股利您附加數據。和打印數據後,顯示隱藏要素和隱藏像下面的數據格,
var printContents = document.getElementById('print_data').innerHTML;
document.getElementById('printContents').innerHTML = printContents;
var allElements = document.body.children;
for(var i = 0; i < allElements.length; i++) {
if(allElements[i].getAttribute('id') !== "printContents") {
allElements[i].style.display = "none";
}
}
window.print();
for(var i = 0; i < allElements.length; i++) {
if(allElements[i].getAttribute('id') !== "printContents") {
allElements[i].style.display = "block";
} else {
allElements[i].style.display = "none";
}
}
工作的例子 - https://jsfiddle.net/totpvcrh/1/
注:在小提琴,關閉打印對話框後,你會得到消息在打開的模式按鈕下方。沒有必要爲此煩惱。在網站上工作正常。
重新分配'.innerHTML'時不再附加事件。 – PHPglue