web網站怎樣實現打印功能?
Web系統中,打印功能一直是個老大難問題,所以產生了很多第三方控件,大部分都是收費的,和自己的系統結合起來很麻煩。
系統采用J2EE技術,OA中也存在jsp打印問題。有三種打印方法:
一種是直接用javascript調用()print,不做任何修改。
第二,根據客戶要求的報表格式,編寫相應格式的html,加載數據進行打印,也可以調用()進行打印,但html的格式要求更高。
第三,通過客戶提供的word格式,將數據庫中的數據與xml配置文件關聯起來,將數據自動加載到word中進行打印。這里,客戶端的word用于打印。
第一種最簡單快捷,幾乎不需要寫程序。這里有幾個問題。你只能打印表格的內容,但是按鈕不能。;我不想被印刷。頁眉和頁腳不我不想被印刷;IE瀏覽器的標題。;我不想打印它。
解決方法:將按鈕放在表格或div中,打印時隱藏,完成后顯示。系統中的javascript打印代碼如下:
函數print(){vartiti文檔。標題文檔。標題#34#34#34#34無#34()文檔。tittiti#34#34}但是,它只能起到印刷的作用,印刷效果一般比較庸俗。
無論如何,系統的大部分模塊都可以盡快打印出來。
第二種是根據每份報表的格式,開發定制的html和java程序,這需要更多的時間。html中要注意表格的樣式控制。瀏覽IE里看起來很細的邊框,打印出來有的線條會粗一些,有的線條會細一些,很難看。
在表格中直接使用bordercolor會使線條看起來很粗,而使用BorderColorLight和BorderColorDark一起使用可以表現出細膩的線條。lthtmlgtltheaddgtlt/headgtltbodygtlttableborder#341#34bordercolorlight#34red#34bordercolordark#34FFFFFF#34cellpadding#343#34cellspacing#340#34gtlttbodygtlttgtlttlttlttlttlttlttDGT名稱lt/tdgtlttdgtltdgt下屬部門lt/lt/tdgtlt/trgtlttrgtlttgtlttdgt陳lt/tdgtt技術部lt/tdgtlt/trgtlt/tbodygtlt/tabl:1px這樣的重疊的地方。
這種方案耗能很大,打印時很難控制分頁,也無法根據客戶的需求隨時調整字體邊框顏色。
第三種方案:從服務器生成word、excel等文檔發送到瀏覽器打印:先將需要打印的數據導入到word或excel中,然后利用word或excel的打印功能實現web打印。以excel為例,實現如何打印。有許多方法可以將網頁中的數據導入excel。這里有一個使用ActiveX控件的方法,就是這個控件是MS為excel提供的一個編程接口,很多編程語言都可以通過這個接口操作excel表格。讓讓我們使用javascript腳本來實現一個簡單的例子。Lt腳本語言#34Javascript#34gt函數Excelprint(){varExcelapp//存儲Excel對象varexcelBook//存儲Excel工作簿文件varexcelSheet//保存Excel活動表try{ExcelnewActiveXobject(#34Excel。application#34)//創建excel對象}catch(e){alert(#34請啟用ActiveX控件設置!#34)return}excelBook()//創建Excel工作簿文件excelSheet//激活Excel工作表的行數varrowLen//table對象for(vari0IltrowLenI){varcollen(I)。cells.length//表格對象的列數for(varj0jltcolLenj)//將excelShe分配給Excel表格的單元格。et。細胞(i1,J1)。值(I)。單元格(j)。innerText}//將表格中每個單元格的innerText導入excel的單元格中。true//將Excel對象設置為可見()//打印工作表(true)//關閉文檔excelApp。quit()//Endexcelobjectexcelappnull//releaseexcelobject}}lt/scriptgt注意:運行此程序的前提條件是IE應允許未標記為安全的Activex控件的初始化和腳本運行。設置方法如下:打開控制面板→互聯網選項→安全→自定義級別→初始化未標記為安全的ActiveX控件并運行腳本→選擇啟用,這樣我們的程序就可以運行了。如果ActiveX控件設置未啟用,程序將在創建Excel對象時引發異常。此時,您可以通過catch()語句捕獲這個異常,并對其進行相應的處理。要運行該程序,客戶端必須安裝MSEXCEL,否則無法驅動Activ
input設置只讀;input設置不可編輯?
設計網頁時,有時需要將輸入框設置為只讀狀態,即里面的內容不可編輯。實現這種設計有兩種方法:使用輸入的disable和readonly屬性。讓讓我們先來看看兩者的區別:ltinput類型。