對(duì)于打印
發(fā)表時(shí)間:2024-06-16 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]JAVA的打印有很多介紹,目前可以實(shí)現(xiàn)純文本的打印了,包括在java的應(yīng)用程序中和applet都可以很好的工作,打印控制也基本能滿足要求.這一部份一下子無法說得詳細(xì).很多菜菜菜菜菜菜菜菜菜菜菜菜菜到不能再菜的鳥,其實(shí)是在IE中實(shí)現(xiàn)打印,非說是什么JSP,JAVA的打印,我建議這些同志們先不要學(xué)編程...
JAVA的打印有很多介紹,目前可以實(shí)現(xiàn)純文本的打印了,包括在java的應(yīng)用程序中和applet都可以很好的工作,打印控制也基本能滿足要求.這一部份一下子無法說得詳細(xì).
很多菜菜菜菜菜菜菜菜菜菜菜菜菜到不能再菜的鳥,其實(shí)是在IE中實(shí)現(xiàn)打印,非說是什么JSP,JAVA的打印,我建議這些同志們先不要學(xué)編程,還是了解一下最基礎(chǔ)的東西.
至于在IE中打印,javascript只能做到打印頁面.如\r
<html>
<a href=
javascript:print()>print</a>
<table>
111111111
222222222
這樣是打印了所有內(nèi)容,那么如果打印頁面中任何一個(gè)表格或元素呢?
我們要打印任何一個(gè)元素,就要先定位它,也就是有很多表格我們要打哪個(gè)?
當(dāng)然只要給它一個(gè)name或ID,就行了.比如\r
<table id=a1>
<tr><td>1111</td><tr>
<table id=a2>
<tr><td>2222</td><tr>
現(xiàn)在要打印a1的內(nèi)容,當(dāng)然要包括
<table id=a1>
<tr><td>1111</td><tr>
如果取到這些值?
a1.innerHTML就不能包括<table id=a1>自己了.你alert(a1.innerHTML)就會(huì)是<TBODY><TR><TD>11111</TD></TR></TBODY>
這當(dāng)然不對(duì).那么要從它外面取它的內(nèi)容,a1.parentElement.innerHTML,它的parentElement是body,而body的innerHTML又不是我們要的,所以要在我們要
的元素外加一個(gè)包裝,比如\r
<span>
<div>都行,它只把
<table id=a1>
<tr><td>1111</td><tr>
包起來,那么
<table id=a1>
<tr><td>1111</td><tr>
的parentElement.innerHTML就是自己了.如\r
<span>
<table id=a1>
<tr><td>1111</td><tr>
</span>
<span>
<table id=a2>
<tr><td>2222</td><tr>
</span>
這時(shí)alert(a1.parnetElement.innerHTML)
看到的就是
<table id=a1>
<tr><td>1111</td><tr>
正是我們要打印的內(nèi)容,那如果把它打印出來啊?
fp=window.open("",aname,"top=2000000,.....")
fp.document.write(a1.parnetElement.innerHTML);
fp.document.write("<"+"script> print(); </" +"script>");
fp.location.reload();
fp.close();
就是說把當(dāng)前要打印的內(nèi)容寫到另外一個(gè)頁面中,這個(gè)頁面中僅有你要打印的內(nèi)容,JAVASCRIPT還是打印全頁,但正是你想要的.剛寫進(jìn)去時(shí)新面中的打印不會(huì)執(zhí)行,要reload一下頁面.打完后關(guān)了它,就這樣了,下課.