Top
首页 > 老文章 > 正文

关于打印

关于打印

关于打印
发布时间:2006-04-19 13:08        来源:        作者:
JAVA的打印有很多介绍,目前可以实现纯文本的打印了,包括在java的应用程序中和applet都可以很好的工作,打印控制也基本能满足要求.这一部份一下子无法说得详细.

很多菜菜菜菜菜菜菜菜菜菜菜菜菜到不能再菜的鸟,其实是在IE中实现打印,非说是什么JSP,JAVA的打印,我建议这些同志们先不要学编程,还是了解一下最基础的东西.

至于在IE中打印,javascript只能做到打印页面.如
<html>
<a href= javascript:print()>print</a>
<table>
111111111
</table>
222222222

这样是打印了所有内容,那么如果打印页面中任何一个表格或元素呢?
我们要打印任何一个元素,就要先定位它,也就是有很多表格我们要打哪个?
当然只要给它一个name或ID,就行了.比如

<table id=a1>
<tr><td>1111</td><tr>
</table>
<table id=a2>
<tr><td>2222</td><tr>
</table>

现在要打印a1的内容,当然要包括
<table id=a1>
<tr><td>1111</td><tr>
</table>
如果取到这些值?
a1.innerHTML就不能包括<table id=a1>自己了.你alert(a1.innerHTML)就会是<TBODY><TR><TD>11111</TD></TR></TBODY>
这当然不对.那么要从它外面取它的内容,a1.parentElement.innerHTML,它的parentElement是body,而body的innerHTML又不是我们要的,所以要在我们要
的元素外加一个包装,比如
<span>
<div>都行,它只把
<table id=a1>
<tr><td>1111</td><tr>
</table>包起来,那么
<table id=a1>
<tr><td>1111</td><tr>
</table>的parentElement.innerHTML就是自己了.如

<span>
<table id=a1>
<tr><td>1111</td><tr>
</table>
</span>
<span>
<table id=a2>
<tr><td>2222</td><tr>
</table>
</span>
这时alert(a1.parnetElement.innerHTML)
看到的就是
<table id=a1>
<tr><td>1111</td><tr>
</table>
正是我们要打印的内容,那如果把它打印出来啊?
fp=window.open("",aname,"top=2000000,.....")
fp.document.write(a1.parnetElement.innerHTML);
fp.document.write("<"+"script> print(); </" +"script>");
fp.location.reload();
fp.close();
就是说把当前要打印的内容写到另外一个页面中,这个页面中仅有你要打印的内容,JAVASCRIPT还是打印全页,但正是你想要的.刚写进去时新面中的打印不会执行,要reload一下页面.打完后关了它,就这样了,下课.
加载更多

专题访谈

合作站点
stat