Jump to content
  • 0

нужна помощь с печатной формой через onclick="window.print();"


itspider
 Share

Question

Я далек от java.

есть задача распечатать часть текста со страницы.

1. если вставить <a href="javascript://" onclick="window.print();">Печать</a> то печатается вся страница.

вопрос: можно ли нужный фрагмент заключить в <div id="print">...</div> и передать id в java ?

2. нашел скрипт

<script type="text/javascript" language="javascript"><!--

function atoprint(aId) {

var atext = document.getElementById(aId).innerHTML;

var captext = window.document.title;

var alink = window.document.location;

var prwin = open('');

prwin.document.open();

prwin.document.writeln('<html><head><title>Версия для печати<\/title><\/head><body text="#000000" bgcolor="#FFFFFF"><div onselectstart="return false;" oncopy="return false;">');

prwin.document.writeln('<div style="margin-bottom:5px;"><a href="javascript://" onclick="window.print();">Печать<\/a> • <a href="javascript://" onclick="window.close();">Закрыть окно<\/a><\/div><hr>');

prwin.document.writeln(atext);

prwin.document.writeln('<\/div><\/body><\/html>');

prwin.document.close();

}

--></script>

нужную часть обрамляю в <div id="MessForPrint">

и добавляю <a href="javascript://" onclick="atoprint('MessForPrint');">Версия для печати</a>

не совсем понимаю данный код, поэтому вопросы:

- можно ли как то сразу выводить в печатную форму, а не в предпросмотр

- как убрать сверху кнопки

- в таблицах не выводятся рамки

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Пожалуйста, не называйте javascript - java, java это совершенно другой язык программирования.

Вы можете использовать отдельный CSS для печати, CSS в котором будет скрыто всё кроме необходимого блока для печати. Подключить такой css можно либо через


<link rel="stylesheet" media="print" href="/styles/print.css" />

Либо прямо внутри вашего CSS используя @media print http://htmlbook.ru/css/media http://www.w3.org/TR/CSS2/media.html


@media print { /* Стиль для печати */
}

Либо подключая стиль внутрь вашего CSS через @import

@import url("print.css") print;

Edited by deadrash
Link to comment
Share on other sites

  • 0

Всем привет.

 

Таже проблемка.

Рамки в табличке при печати, надо чтобы неизменялись....

Использую подобный скрипт.

Но, не подключаются стили для печати - как описал deadrash.

 

Вот как подключены у меня файлы стилей.

<head>...<link rel="stylesheet" type="text/css" href="<?=base_url();?>styles/style.css" media="screen" /><link rel="stylesheet" type="text/css" href="<?=base_url();?>styles/print_style.css" media="print"  />...</head>

В файле print_style.css у меня только вот это:

div#add_account table {/*Стиль рамки для таблиц*/            border-collapse: collapse;            border: #000000;}

Я чего-то не так понял?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy