2017-02-11 66 views
0

我想重定向(window.location或window.replace)到新的URL,並加載該頁面要打印該頁面(.print())使用jquery。使用jquery重定向和打印頁面負載

我已經試過

window.location.replace(url).print(); 

,但它只是重定向頁面,wan't打印頁面, 任何想法?

+0

問題是,您有權訪問您要重定向到的頁面的代碼嗎? –

+0

@Kinduser是的,我有,所有訪問整個網站,只是想重定向到特定按鈕上的特定頁面點擊 – Priyank

+0

@freshbm感謝您的支持,但您的代碼只是重定向到我想打印()的URL。 – Priyank

回答

1

在你的第一個文件,添加以下腳本:

<body> 
<a href="yourPageThatYouWantRedirectTo.html" onclick='func()'>Click and redirect</a> 

<script> 
function func(){ 
    localStorage.setItem('redirected', true); 
} 
</script> 
</body> 

而且在另一個文件中,您將會重定向到:

window.onload = function(){ 
    var wasRedirected = JSON.parse(localStorage.getItem('redirected')); 
    if (wasRedirected == true) { 
    window.print(); 
    localStorage.clear(); 
    } 
} 
+0

धन्यवाद,運行,但我可以使用比這更好嗎?像'window.location.open(url).print();'這個問題,它在新標籤中打開 – Priyank

+0

@ Priyank57你想在新標籤中打開頁面嗎?或在同一窗口? –

+0

在同一個標​​籤中,我通過在重定向url中傳遞一個額外的參數(print)來完成該操作。 – Priyank

2

print()添加到您想要打印的站點中的onload-function。

window.location.replace(url) 

直接重定向到一個網站。所以print()永遠不會被調用。

如果無法做到這一點,你可以使用下面的代碼:

function printExternal(url) { 
    var printWindow = window.open(url, 'Print', 'left=200, top=200, width=950, height=500, toolbar=0, resizable=0'); 
    printWindow.addEventListener('load', function(){ 
     printWindow.print(); 
     printWindow.close(); 
    }, true); 
} 
+0

我只想打印頁面,當頁面從這個頁面被重定向,所以不能使用print()加載。 – Priyank

+0

所以使用第二個代碼塊;) – osanger