我想在打印textarea的内容时从此脚本中删除弹出选项,因此打印页面将在textarea的同一页面中,因为我添加了CSS,因此打印的页面将没有链接或日期“ @page {大小:自动;边距:0毫米;}“,但在单独的页面中弹出时,会显示链接和日期
<html >
<head>
<title></title>
<!-- script print button -->
<script type="text/javascript">
function printTextArea() {
childWindow = window.open('','childWindow','location=yes, menubar=yes, toolbar=yes');
childWindow.document.open();
childWindow.document.write('<html><head></head><body dir="rtl">');
childWindow.document.write(document.getElementById('targetTextArea').value.replace(/\n/gi,'<br/>'));
childWindow.document.write('</body></html>');
childWindow.print();
childWindow.document.close();
childWindow.close();
}
</script>
<style type="text/css">
@page { size: auto; margin: 0mm; }
textarea {
direction: rtl;
background-color: white;
font-size: 1em;
font-weight: bold;
font-family: Verdana, Arial, Helvetica, sans-serif;
border: 1px solid #00acee;
resize: none;
}
input[type=button] {
background-color: #00acee;
border: none;
color: white;
padding: 16px 32px;
text-decoration: none;
margin: 4px 2px;
cursor: pointer;
}
</style>
</head>
<body>
<p>
<TEXTAREA name="thetext" rows="20" cols="80"id="targetTextArea" placeholder="قم بنسخ و لصق الطلب لملأه و التعديل عليه و طباعته بالزر أسفله ......"></TEXTAREA>
</p>
<!-- print button -->
<center> <input type="button" onclick="printTextArea()" value="طباعة"/></center>
</body>
</html>
答案 0 :(得分:0)
之所以会这样,是因为您正在printTextArea()
内打开一个新窗口。
使用window.open()方法打开一个窗口时,可以从目标窗口使用此属性来返回源(父)窗口的详细信息。 您可以在w3schools上了解更多有关它的信息。 W3School Window Opener
function printTextArea() {
childWindow = window.open('','childWindow','location=yes, menubar=yes, toolbar=yes');
childWindow.document.open();
childWindow.document.write('<html><head></head><body dir="rtl">');
childWindow.document.write(document.getElementById('targetTextArea').value.replace(/\n/gi,'<br/>'));
childWindow.document.write('</body></html>');
childWindow.print();
childWindow.document.close();
childWindow.close();
}
代替打开新窗口,您应该通过id选择文本区域,并使用.innerHTML
更新它的html。例如:
document.getElementById("demo").innerHTML = "Paragraph changed!";