簡體   English   中英

如何在javascript中的IE9中打印文本框的內容

[英]How to print content of textbox in IE9 in javascript

當用戶在運行時輸入值時,我必須使用JavaScript打印一個帶有其值的文本框,但以下代碼與IE9 +文本框不兼容,該文本框位於div標記內

Print:function()
{
     var divtoprint = document.getElementById('div1');

     var popupWin = window.open('', '_blank', 'width=500,height=400');
     popupWin.document.open();
     popupWin.document.write('<html><body onload="window.print()">' + divtoprint.innerHTML + '</html>');
     popupWin.document.close();
 }

請你幫忙

我變了 :

<!DOCTYPE html>
<html>
<head>
<script>
function print(){
     var divtoprint = document.getElementById('main-div').innerHTML;
     alert(divtoprint);
     var popupWin = window.open('', '_blank', 'width=500,height=400');
     popupWin.document.open();
     popupWin.document.write('<html><body onload="window.print()">' + divtoprint + '</html>');
     popupWin.document.close();
 }
</script>
</head>
<body>
 <div>
 <div id="main-div">
    <input type="text" name="FirstName" value="Mickey">
    </div>
    <input type="button" value=" Print Terms " onClick="print()">
</div>

</body>
</html>

它在ie9,ie10中可以使用f9。

這是我ie 10中的屏幕截圖:

在此處輸入圖片說明

和這個: 在此處輸入圖片說明

IE對html進行了一些嚴格的驗證。 Chrome,firefox和其他瀏覽器並不嚴格。

在您的代碼中,您缺少結束標記。 您將需要此標記,並且我確定您的代碼將在IE中運行。

更換:

popupWin.document.write('<html><body onload="window.print()">' + divtoprint.innerHTML + '</html>');

通過:

popupWin.document.write('<html><body onload="window.print()">' + divtoprint.innerHTML + '</body></html>');

在該行的末尾,我添加了結束標記。

我真的懷疑這是否可以做到誠實。 此外,打印網頁的一種常見做法是附加樣式表以進行打印,其中隱藏了所有要打印的元素,但隱藏了所有元素。
這是一篇不錯的博客文章:
打印樣式表

這是一個簡單的示例:

<!DOCTYPE html>
<html>
<head>
    <style media="print">
        .noprint { display: none; }
    </style>
</head>
<body">
    <div>
        <div id="main-div">
            <input type="text" id="mytextbox" name="FirstName" value="Mickey"/>
        </div>
        <input type="button" class="noprint" value=" Print Terms " onClick="window.print()">
    </div>
</body>

現在,如果您的用戶在瀏覽器中轉到“打印預覽”,他們將不會看到“打印”按鈕(與單擊頁面上的“打印”按鈕時打印頁面的方式相同)

希望對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM