[Javascript] Come posso nascondere il pulsante prima della stampa e mostrarlo quando il processo di stampa è stato completato?


Answers

Il problema è che non puoi sapere quando la stampa è finita usando javascript. Non ci sono eventi che verranno attivati ​​per notificare questo.

Per motivi di sicurezza, javascript viene eseguito in un ambiente sandbox all'interno del browser limitando il suo accesso a qualsiasi risorsa di sistema.

Question

Ho un pulsante di stampa con id="print_req" . Ho scritto un codice JavaScript per stampare una pagina, che viene attivato facendo clic su questo pulsante, e voglio anche nascondere questo pulsante prima di stampare, e mostrarlo dopo l'intero processo di stampa. Significo non stampare il pulsante nel mio documento stampato. Ecco il mio codice:

$(document).ready(function(){
    $("#print_req").click(function(){
        $("#print_req").css("display","none");
        window.print();  
    });

    $("#print_req").css("display","block");
    return false;   
});

Questo nasconde correttamente quel pulsante, ma al termine del processo di stampa, il pulsante non verrà più visualizzato! Qual è il problema?




La finestra di dialogo di stampa fa parte del sistema operativo. Javascript può accedere solo agli elementi che fanno parte della pagina Web - qualsiasi altra cosa costituirebbe una grave violazione della sicurezza.




Semplicemente fai questo ...

$ (Document) .ready (function () {

$('#print').on('click',function(){
  $('#print').hide();
  window.print();
  $('#print').show();

     });
});