關於js打印(window.print();) 去除頁眉頁腳的問題


下面的這段js只能吧打印的路徑給去掉,但是路徑位置取而代之的是出現了這幾個字“about:blank”
其他的三個地方並沒有去掉,這個該怎么去掉
左上角 w
左下角 about:blank
右上角 頁碼:1/1(w)
右下角 2011/14/14
怎么把這四個角都去掉
 var hkey_root,hkey_path,hkey_key;
    hkey_root="HKEY_CURRENT_USER";
    hkey_path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";


    //網頁打印時清空頁眉頁腳
    function pagesetup_null() {
        try {
            var RegWsh = new ActiveXObject("WScript.Shell")
            hkey_key = "header"
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "")
            hkey_key = "footer"
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "")
        } catch (e) {}
    }
    function pagesetup_default() {
        try {
            var RegWsh = new ActiveXObject("WScript.Shell")
            hkey_key = "header"
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&w&b頁碼,&p/&P")
            hkey_key = "footer"
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&u&b&d")
        } catch (e) {
        }
    }

    function doPrint(printDiv) {
        try{
            pagesetup_null();
            newwin = window.open("", "newwin", "height=" + window.screen.height + ",width=" + window.screen.width + ",toolbar=no,scrollbars=auto,menubar=no");
            newwin.document.body.innerHTML = document.getElementById(printDiv).innerHTML;
            newwin.window.print();
            newwin.window.close();
            pagesetup_default();
        }catch(e){}
    }
    
   

8 个解决方案

#1


web頁面是沒有權限修改客戶端注冊表的。你的設置根本不會去執行,

#2


本帖最后由 net_lover 於 2011-12-15 15:31:20 編輯
Web打印一般采用插件實現,或者告訴客戶端用戶自己修改

ScriptX
http://www.meadroid.com/scriptx/

還有其他的報表控件等,

或者導入到Word中打印

#3


引用 2 樓 net_lover 的回復:
Web打印一般采用插件實現,或者告訴客戶端用戶自己修改

ScriptX
http://www.meadroid.com/scriptx/

還有其他的報表控件等,

或者導入到Word中打印

同意,如果是內部用戶,還不如用 JS 直接調用 Word 填充數據給用戶,有些顯示不盡如人意的地方,用戶還可以自己改改。
如果是互聯網上發布,去頁眉頁腳的程序,根本就是白搭,根本沒權限調用。

#4


在IE下可從腳本控制頁頭頁尾等打印設置,但因涉及改注冊表等問題,安全性差,且容易被用戶禁用,更不能跨瀏覽器。LZ還是從其他角度解決這個問題吧。

#5


想修改客戶端注冊表?這個可不行。

換種方式吧,參考:
http://blog.csdn.net/taomanman/article/details/5871080

在打印前進行頁面設置,去掉頁面、頁腳信息即可。

#6


也就是說,我這種方案是實現不了了?
那用window.print() 這種方法,可以添加代碼來實現去除頁眉頁腳嗎?

引用 1 樓 net_lover 的回復:
web頁面是沒有權限修改客戶端注冊表的。你的設置根本不會去執行,

#7


引用 5 樓 taomanman 的回復:
想修改客戶端注冊表?這個可不行。

換種方式吧,參考:
http://blog.csdn.net/taomanman/article/details/5871080

在打印前進行頁面設置,去掉頁面、頁腳信息即可。

暖風哥的這種也需要設置IE
那就直接在IE 文件 里面設置一下好了!

#8


不能使用常規的代碼設置

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com