Вот что я делаю ....
Включить печать окна и его закрытие в зависимости от параметра запроса.
Требуется jQuery. Может быть выполнено в _Layout или на главной странице для работы со всеми страницами.
Идея состоит в том, чтобы передать параметр в URL-адресе, сообщающий странице о печати и закрытии, если параметр установлен, то событие jQuery «готово» распечатывает окно, а затем, когда страница полностью загружена (после печати), «загрузка» вызывается, который закрывает окно. Все эти, казалось бы, лишние шаги заключаются в том, чтобы дождаться печати окна перед закрытием.
В теле html событие добавления и загрузки, которое вызывает printAndCloseOnLoad (). В этом примере мы используем cshtm, вы также можете использовать javascript для получения param.
<body onload="sccPrintAndCloseOnLoad('@Request.QueryString["PrintAndClose"]');">
В javascript добавьте функцию.
function printAndCloseOnLoad(printAndClose) {
if (printAndClose) {
window.open('', '_self', ''); window.close();
}
}
И событие готовности jQuery.
$(document).ready(function () {
if (window.location.search.indexOf("PrintAndClose=") > 0)
print();
});
Теперь при открытии любого URL-адреса просто добавьте параметр строки запроса «PrintAndClose = true», и он будет напечатан и закроется.