2011-08-22 37 views
0

我對javascript命令有疑問。我正在做的是在一個asp.net頁面上,一個用戶點擊一個打印按鈕,我打開了另一個頁面,在該頁面的底部,我輸入了一個簡單的腳本命令,但我注意到了我的窗口。關閉不總是工作。以下是我的代碼如下。任何幫助將非常感激。ASP.Net中的Javascript命令問題

<script type="text/javascript"> 
       window.print(); 
       window.close(); 
</script> 

回答

1

嘗試添加延遲調用window.close()

<script type="text/javascript"> 
    window.print(); 
    setTimeout(window.close, 10000); 
</script> 
+0

對不起,這不是一個好的解決方案,因爲它會在不同的瀏覽器中產生不同的效果。例如,在IE中,當打印對話框關閉時,「倒計時」開始,因爲Chrome不打開模式對話框進行打印。 – Preli

0

之前,我不認爲你會得到它的工作這種方式。例如在IE中打印功能將阻止關閉函數並在Chrome的許多版本中window.close不起作用。

有這樣做的另外2種方法:

  1. 如果可能嘗試通過指定自己的樣式表與媒體=「打印」使用打印樣式表。在這個樣式表中,您可以隱藏諸如導航菜單之類的東西,並選擇合適的顏色進行打印。 details on selfhtml
  2. 如果這樣做不起作用,讓用戶理解你在做什麼:將當前打印按鈕重命名爲「打印預覽」,讓用戶在完成打印時關閉此窗口。我看到很多其他網站也是這樣做的。如果你喜歡,你仍然可以調用window.print。