使用javascript / jquery打印文本文件的内容

时间:2016-03-29 04:12:08

标签: javascript jquery text printing

我的系统中有一个文本文件。我想使用javascript / jquery打印该文本文件的内容。我怎样才能做到这一点。我已经提到了Link。但它只是从div打印。我需要使用window.print()方法。但是如何使用javascript打印文本文件?请指导我。

3 个答案:

答案 0 :(得分:2)

首先打开文本文件并打印。

{{1}}

小提琴示例:https://jsfiddle.net/shree/91459gm9/

小提琴手找不到文件但打开的样本文件和打印窗口要打印。

答案 1 :(得分:0)

使用该代码可以解决您的问题: -

<html>
<head>
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.1.min.js" > </script> 
<script type="text/javascript">

function PrintElem(event)
{
    var selectedFile = event.target.files[0];
    var reader = new FileReader();
    var result = document.getElementById("mydiv");
    reader.onload = function(event) {
        result.innerHTML = event.target.result;
    };
    reader.readAsText(selectedFile);
    console.log(selectedFile);
    //Popup($('#mydiv').html());
}
function Popup(elam) 
{
    //console.log($(elam).html());return false;
    var data = $(elam).html();
    var mywindow = window.open('', 'my div', 'height=400,width=600');
    mywindow.document.write('<html><head><title>my div</title>');
    /*optional stylesheet*/ //mywindow.document.write('<link rel="stylesheet" href="main.css" type="text/css" />');
    mywindow.document.write('</head><body >');
    mywindow.document.write(data);
    mywindow.document.write('</body></html>');

    mywindow.document.close(); // necessary for IE >= 10
    mywindow.focus(); // necessary for IE >= 10

    mywindow.print();
    mywindow.close();

    return true;
}

</script>
</head>
<body>

<div id="mydiv">

</div>

<input type="file" onchange="PrintElem(event)">
<input type="button" value="Print Div" onclick="Popup('#mydiv')" />
</body>
</html>

答案 2 :(得分:0)

我认为您需要后端(php,rails,nodejs)支持从计算机读取文件,然后将其显示在任何HTML块上然后打印这是打印文件的最佳方式

如果您有后端设置并且文件必须在您的服务器上,则可以使用以下语法

$(document).ready(function(){

 $("button").click(function () {
        $.ajax({
            url : "Content.txt",
            dataType: "text",
            success : function (result) {
                $("#container").html(result);
            }
        });
    });
});