今天做到了web頁面課程表列印時,上網找了一些資料,最後使用了下面的方法實現了我需要的功能。將需要列印的課程表的table放入div標籤中,然後指定出需要列印的地區,最後調用window.print列印指定內容。
範例程式碼(代碼中有些內容已省略)
function preview() { bdhtml = window.document.body.innerHTML; sprnstr = "<!--startprint-->"; eprnstr = "<!--endprint-->"; prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17); prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr)); window.document.body.innerHTML = prnhtml; window.print();}
上面的是javascript代碼,下面是html頁面代碼
<div class="print"> <input type= "button" value= "列印課表" onclick= "preview()"/> </div> <div class="result"> 課程表查詢結果 </div><center>本部分以下被列印</center> <!--startprint--> <div class="timetable"> <table id="table1" class ="tableresult"style="margin-left :auto;margin-right:auto;"> <tr > <th> </th> <th>星期一</th> <th>星期二</th> <th>星期三</th> <th>星期四</th> <th>星期五</th> <th>星期六</th> <th>星期日</th> </tr> <tr > <th> 1,2 節</th> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td></td> </tr> <tr > <th> 3,4 節</th> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td></td> </tr> <tr > <th> 5,6 節</th> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>資訊技術<br>數信學院<br>501機房<br>生物專業</td> </tr> <tr > <th> 7,8 節</th> <td></td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td>大學資訊技術課<br>數信學院<br>501機房<br>生物專業</td> <td></td> <td></td> </tr> </table> </div> <!--endprint--><center>本部分以上被列印</center>