i have code that printing the selected div area after click on button print window open but problem is that when i type something into the textbox and then click on button then textbox values disppear from the page and also textbox value didn't appear in the print window?
<script>
function printDiv(divName) {
var printContents = document.getElementById(divName).innerHTML;
var originalContents = document.body.innerHTML;
document.body.innerHTML = printContents;
window.print();
document.body.innerHTML = originalContents;
}
</script>
<div id="printableArea">
<input type="text" >
</div>
<input type="button" onclick="printDiv('printableArea')" value="print a div!" />
I have altered your code to retain the textbox value:
<html>
<head>
<script>
function printDiv(divName) {
var printContents = document.getElementById(divName).innerHTML;
var originalContents = document.body.innerHTML;
var text=document.getElementById("t1").value;
document.body.innerHTML = printContents;
window.print();
document.body.innerHTML = originalContents;
document.getElementById("t1").value=text;
}
</script>
</head>
<body>
<div id="printableArea">
<input type="text" id="t1">
</div>
<input type="button" onclick="printDiv('printableArea')" value="print a div!" />
</body>
</html>
function printDiv(divName) {
var inpText = document.getElementsByTagName("input")[0].value;
var printContents = document.getElementById(divName).innerHTML;
var originalContents = document.body.innerHTML;
document.body.innerHTML = printContents;
document.getElementsByTagName("input")[0].value = inpText;
window.print();
document.body.innerHTML = originalContents;
document.getElementsByTagName("input")[0].value = inpText;
}