使用 javascript 仅打印 html table

Print only html table using javascript

我有以下基本 html table 和 Java 功能只打印 table 内容但是打印按钮在点击时没有任何反应,我想可能java 编码是个问题,但是它不起作用,我可以请第三双眼睛帮忙吗

<html>
<body>

<table border="1" cellpadding="3" id="printTable">
    <tbody><tr>
        <th>First Name</th>
        <th>Last Name</th>      
        <th>Points</th>
    </tr>
    <tr>
        <td>Jill</td>
        <td>Smith</td>      
        <td>50</td>
    </tr>
    <tr>
        <td>Eve</td>
        <td>Jackson</td>        
        <td>94</td>
    </tr>
    <tr>
        <td>John</td>
        <td>Doe</td>        
        <td>80</td>
    </tr>
    <tr>
        <td>Adam</td>
        <td>Johnson</td>        
        <td>67</td>
    </tr>
</tbody></table>

<br />
<br />

<button>Print me</button>

<script>
function printData()
{
   var divToPrint=document.getElementById("printTable");
   newWin= window.open("");
   newWin.document.write(divToPrint.outerHTML);
   newWin.print();
   newWin.close();
}

$('button').on('click',function(){
printData();
})
</script>
</body>
</html>

使用 javascript 时,查看浏览器的控制台通常很有用。打开这个页面后,我的报错:

ReferenceError: $ is not defined

$是jQuery插入的全局变量。尝试添加

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

到代码。这将包括 jQuery 库。

Change this var divToPrint=document.getElementById("printTable");
to this var divToPrint=document.getElementById("<%=printTable.ClientID>");

and add jquery library <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

对javascript函数的调用不正确。当您使用“$”符号时,表示您正在使用 JQuery。您有 2 个选择:

1 - 将 jquery 库添加到您的页面:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>

2 - 在 'onclick' 事件的按钮上直接调用 javascript 函数。这是您的最佳选择:

<button onclick="printData()">Print me</button>