ASP.Net MVC 3.0 onclick распечатать вид? - PullRequest
1 голос
/ 29 ноября 2011

В моем приложении MVC 3.0 в разных местах есть ссылки для вызова функции печати. ​​

При нажатии на эту ссылку возвращается представление со всеми необходимыми данными и форматом.

Теперь Вместо того, чтобы показывать это представление, я бы хотел напечатать это представление без показа пользователя. Возможно ли это?

Как мне это сделать

Ответы [ 3 ]

2 голосов
/ 29 ноября 2011

Вы можете попробовать распечатать скрытый вид, используя советы, приведенные на:

http://morshed -alam.blogspot.com / 2009/12 / how-to-print-hidden-block-из-HTML-page.html

2 голосов
/ 29 ноября 2011

Чтобы начать печатать страницу, вы можете позвонить window.print() в Javascript. Вы можете привязать это либо к кнопке или ссылке, либо автоматически вызывать ее при загрузке страницы. Шаг для загрузки нового представления с версией для печати больше не является необходимым, поскольку браузеры поддерживают медиазапросы и таблицы стилей, специально предназначенные для определенных носителей.

Обычная операция - использовать обычные таблицы стилей для браузеров и иметь дополнительную таблицу стилей только для печати. Эта задача этой дополнительной таблицы стилей состоит только в том, чтобы скрыть элементы, которые не имеют смысла в распечатке (например, навигация) или по-разному стилизовать или расположить некоторые элементы (например, логотип). Таким образом, вы можете использовать один и тот же HTML / view для просмотра в браузере и для печати. ​​

Вы бы загрузили две таблицы стилей следующим образом:

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

Таким образом, пользователь может распечатать любую страницу, и она всегда будет хорошо выглядеть.

0 голосов
/ 29 ноября 2011

Как говорит Рэнди Уэбб на сайте bytes.com: используйте таблицу стилей мультимедиа, как в comp.infosystems.www.authoring.stylesheets.

Однако печатная версия по-прежнему отображается в браузере, и пользователь должен нажать опцию печати в меню

...