我正在使用Stack Overflow上另一篇文章的代碼。打印頁面後無法重定向
How to I redirect to another page *after* printing document?
頁給了我一個解決方案,寫
window.location.href = "";
的window.print();
方法之後被寫入。所以我做了。以下是我的代碼
$('.start-printing').click(function() {
event.preventDefault();
window.print();
var url = window.location.href;
var formId = url.split('/')[4];
var newPage = "";
if (url.split('/')[3] == 'form') {
newPage = 'form_2';
} else if (url.split('/')[3] == 'form') {
newPage = 'form_2';
} else if (url.split('/')[3] == 'form_2') {
newPage = 'form_3';
} else if (url.split('/')[3] == 'form_3') {
newPage = 'form_4';
} else if (url.split('/')[3] == 'form_4') {
newPage = 'form_5';
}
url = url + newPage + formId;
});
我正在使用錨標籤來完成這項工作。但我阻止了它的默認行爲。你可以在第一行看到。
下面是HTML
<a href="~/#startPrinting" class="start-printing">START PRINTING</a>
善有善報就是,它確實讓我打印文檔時,我一下就可以了。我可以看到Chrome的打印彈出窗口,然後點擊打印按鈕。但之後,它確實不會將我重定向到任何地方。
我已經試過在控制檯中觀察並試圖指出問題所在。但我無法找到問題。
我也正在根據頁面的當前URL將邏輯重定向到表單的下一頁。
這裏有什麼錯誤?
即使在改變錨標記,一個span元素。它仍然不起作用! –
嘗試按原樣留下錨標記,但只需將「window.location」代碼添加到點擊函數的最後。因此,單擊鏈接時,默認行爲被event.preventDefault()禁止,這非常好,然後通過window.print()發生打印任務。在此之後,你開始建立新的URL,它應該被傳遞給「window.location」。 window.location = url; – lux
我正在嘗試。對於window.location,我有這個值'urlSplit [2] +'/'+ newPage +'/'+ formId',但它似乎沒有激活。任何猜測? –