* Multiple * Print Specific Div - PullRequest
       16

* Multiple * Print Specific Div

0 голосов
/ 31 января 2010

Я постараюсь объяснить:

У меня есть множество классов div, но для простоты, скажем, у меня только 3.

Кто-то просматривает DIV 1, и я хочу дать ему возможность печатать только DIV 1, пропуская 2 и 3.

Однако на той же странице я хотел бы дать им возможность ТОЛЬКО ПЕЧАТЬ DIV 2. Или только печатать DIV 3.

Я думаю, я понимаю, как вы можете не печатать определенные вещи. Но как вы можете выбрать раздел здесь или там на той же странице для печати со ссылкой для печати. ​​

Спасибо, Tracy

Ответы [ 3 ]

0 голосов
/ 10 октября 2012

Существует много связанных постов о печати содержимого div, этот конкретный вопрос все еще оставался открытым, хотя его задавали в 10 году. Следующая функция JavaScript может использоваться для печати содержимого выбранного тега Div. Надеюсь это поможет. Заявитель: я использовал некоторые из существующих ответов, исправленные / улучшенные коды / ошибки для работы (и тестирования) с IE-8.

function printDiv(divName) {
    var divToPrint = document.getElementById(divName);
    var newWin = window.open('', 'PrintWindow', 'width=400, height=400, top=100, left=100', '');
    newWin.document.open();
    newWin.document.write('<html><body onload="window.print()">' + divToPrint.innerHTML + '</body></html>');
    newWin.document.close();
    setTimeout(function () { newWin.close(); }, 10);
} 

Вызовите printDiv из любой точки страницы или из выбранного Div. Вот тестовая ссылка:

<a href="Javascript:printDiv('divCustomerData')">Print Customer Data</a>

<a href="Javascript:printDiv('divOrderData')">Print Order Data</a>

Назначьте соответствующие идентификаторы для Div, который должен быть напечатан:

<div id="divCustomerData">Div Contents goes here... </div>

Единственный улов сейчас - это потеря стилей CSS. Я обновлю ответ, когда получу возможность исправить это. Благодаря.

0 голосов
/ 13 ноября 2012

https://github.com/jasonday/jquery.printThis

Я бы дал каждому div идентификатор, а затем, используя вышеупомянутый плагин (я написал), указывал в соответствии с div id.

0 голосов
/ 31 января 2010

Вы можете использовать jQuery, чтобы показать / скрыть div. Прочтите руководство по jQuery:

http://docs.jquery.com/Tutorials

Код будет выглядеть так:

<script>
function showDiv(n) {
  $('.divs').hide();
  $('#div_'+n).show();
}
$(document).ready(function() { showDiv(1); });
</script>
<a href='javascript:showDiv(n)'>show div n</a>
<div class='divs' id='div_n'>I'm div n</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...