JAVA的打印有很多介绍,目前可以实现纯文本的打印了,包括在java的应用程序中和applet都可以很好的工作,打印控制也基本能满足要求.这一部份一下子无法说得详细.
很多菜菜菜菜菜菜菜菜菜菜菜菜菜到不能再菜的鸟,其实是在IE中实现打印,非说是什么JSP,JAVA的打印,我建议这些同志们先不要学编程,还是了解一下最基础的东西.
至于在IE中打印,javascript只能做到打印页面.如\r <html> <a href= javascript:print()>print</a> <table> 111111111
222222222
这样是打印了所有内容,那么如果打印页面中任何一个表格或元素呢? 我们要打印任何一个元素,就要先定位它,也就是有很多表格我们要打哪个? 当然只要给它一个name或ID,就行了.比如\r
<table id=a1> <tr><td>1111</td><tr>
<table id=a2> <tr><td>2222</td><tr>
现在要打印a1的内容,当然要包括 <table id=a1> <tr><td>1111</td><tr>
如果取到这些值? a1.innerHTML就不能包括<table id=a1>自己了.你alert(a1.innerHTML)就会是<TBODY><TR><TD>11111</TD></TR></TBODY> 这当然不对.那么要从它外面取它的内容,a1.parentElement.innerHTML,它的parentElement是body,而body的innerHTML又不是我们要的,所以要在我们要 的元素外加一个包装,比如\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> 这时alert(a1.parnetElement.innerHTML) 看到的就是 <table id=a1> <tr><td>1111</td><tr>
正是我们要打印的内容,那如果把它打印出来啊? 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一下页面.打完后关了它,就这样了,下课.
|