Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde. Já pesquisei em vários lugares mas não consegui achar uma solução adequada para meu problema, que é o seguinte:
Tenho uma página (P1) que mostra as informações de um usuário qualquer, trazendo todos os dados dele, separados por abas (imagine um currículo, em que há abas de 'dados pessoais', 'endereço', 'experiências profissionais', 'conhecimentos técnicos' e 'informações adicionais', por exemplo), porém esta página é exibida carregando todas as informações do site (menus laterais, footer etc).
E esta página precisa de uma versão para impressão, que é uma página diferente dessa (P2); puxa todas as informações do usuário também, mas não separa por abas, e não trás as informações do site, apenas o logo da empresa no topo da página. Porém o que eu queria é que esta P2 NÃO pudesse ser visualizada pelo usuário, fosse apenas carregada e imprimida diretamente ao clicar em um botão de imprimir na P1.
Atualmente, o mais próximo que consegui foi utilizando o JS abaixo, que achei na net:
<script language="javascript" type="text/javascript">
function PrintElementID(id, pg) {
var oPrint, oJan;
oPrint = window.document.getElementById(id).innerHTML;
oJan = window.open(pg);
oJan.document.write(oPrint);
oJan.history.go();
oJan.window.print();
}
</script>
Porém ele abre a janela a ser imprimida, que não é bem o que quero..
Já tentei também dar um <body onload=window.print();> na P2 seguido de um redirecionamento para a P1, mas ele simplesmente redireciona antes de mandar imprimir, além de não ser exatamente o que busco..
Já utilizei coisa parecida imprimindo uma página diretamente em um excel, utilizando os headers:
// definimos o tipo de arquivo
header("Content-type: application/msexcel");
// Como será gravado o arquivo
header("Content-Disposition: attachment; filename=nome_do_arquivo.xls");
Era +/- isso que eu precisava, pois a página nem chega a carregar, simplesmente imprime direto em um XLS, mas no meu caso seria enviar direto para a impressora imprimir.
[]'s
Glauber
Carregando comentários...