2017-08-11 51 views
0

我有一個示例html頁面,我只想打印此頁面的三個副本,並且只有在獲取此頁面的第二個副本時才更改原始(在右上角提及)以複製。無論如何,我們可以通過Javascript或Jquery實現這一目標嗎?如何使用javascript打印頁面的原始,重複和三重副本?

function myFunction() { 
 
    window.print(); 
 
}
.original { 
 
float : right; 
 
margin-right : -0.1cm; 
 
}
<p>Click the button to print the current page.</p> 
 

 
<button onclick="myFunction()">Print this page</button> 
 

 
<div class="col-xs-4"></div> 
 
     <div class="col-xs-1 original"><font color="red"><strong>Original</strong></font></div> 
 
     
 
     
 

+1

我想最多你可以計算你的'myFunction'被調用了多少次;但這當然不意味着實際上打印了任何東西,用戶可以簡單地取消對話框。或者他們可以一次打印二十份,只需在對話框中輸入該數字。您無法通過使用在普通網頁上下文中運行的JS來了解這一點。 – CBroe

+0

一次打印一個「原始」和兩個「副本」可能會有點可能,但是......如果你通過JS克隆文檔內容,再追加兩次(多少讓你陷入麻煩,比如重複ID等,你必須看到),然後使用打印樣式表來控制像分頁符發生的地方... – CBroe

回答

0

我試圖讓簡單的解決方案,其擁有打印的標誌暫時計數。請檢查下面。

var v1=0; 
 
function myFunction() { 
 
    if (v1==0) { 
 
    window.print(); 
 
    } 
 
    else { 
 
    window.print(); 
 
    $('#s1').text('Duplicate'); 
 
    } 
 
    v1++; 
 
}
.original { 
 
float : right; 
 
margin-right : -0.1cm; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p>Click the button to print the current page.</p> 
 

 
<button onclick="myFunction()">Print this page</button> 
 

 
<div class="col-xs-4"></div> 
 
     <div class="col-xs-1 original"><font color="red"><strong id="s1" >Original</strong></font></div>

希望這將幫助你!

+0

感謝您的回覆!我試過你的代碼,但如果我們在打印窗口中使用cancel,並再次點擊打印,它會顯示爲重複。我們不能有一個條件,只有我們打印出原件時,原件才能更改爲複製件。 – coder12345

+0

不幸的是,window.print()不返回任何值。因此,無法知道用戶是否單擊保存或取消。 – Amol