У меня есть приложение .Net, которое динамически создает небольшую HTML-страницу и вытаскивает ее в новом окне с использованием метода javascript document.open. Все с этой функциональностью работает нормально.Как вы печатаете из всплывающего окна в javascript?
Теперь я хочу добавить кнопку на страницу HTML, которая печатает страницу. Я попытался, используя следующий код, чтобы не дало никаких результатов:
<a href='print.html' onClick='window.print();return false;'>
<img src='images/printer.png' height='32px' width='32px'></a>
При нажатии на кнопку в всплывающем окне, ничего не происходит. Но когда исходный код этой страницы сохраняется и загружается в браузере как отдельная страница, кнопка печати работает отлично.
Таким образом, похоже, что проблема связана с тем, что код находится во всплывающем окне.
[Проблема теперь в том, что код написан во всплывающем окне после его открытия.] Кто-нибудь знает способ исправить эту проблему или любые альтернативы?
EDIT:
Другой метод, который я пытался с теми же результатами:
<input type='button' onclick='window.print()' value='Print' />
и
<a href='javascript:window.print()'>
<img src='images/printer.png' height='32px' width='32px'></a>
EDIT СНОВА:
Приведенный выше код работает в Firefox, но не в IE7. Любые идеи по работе для IE?
EDIT еще раз повторил:
Вот тест, используя код, который npupposted ниже. Вместо кода для всплывающего окна, живущего в отдельном html-файле, я открываю пустой URL-адрес, а затем записываю код. Кажется, что этот шаг вызывает проблему.
<html>
<head>
<title>main</title>
</head>
<body>
<h1>
Pop & print</h1>
<button onclick="pop();">
Pop</button>
<script type="text/javascript">
var POP;
function pop() {
var newWin = window.open('', 'thePopup', 'width=350,height=350');
newWin.document.write("<html><head><title>popup</title></head><body><h1>Pop</h1>" +
"<p>Print me</p><a href='print.html' onclick='window.print();return false;'>" +
"<img src='images/printer.png' height='32px' width='32px'></a></body></html>");
}
</script>
</body>
</html>
Это был тот же самый результат, работает в отдельном окне браузера, но не из всплывающего окна. – sglantz
Хм! Когда я нажимаю кнопку, она открывает стек принтера для выбора принтера. У вас есть принтеры? Может быть, он не может найти принтеры? Но в любом случае он должен открыть окно выбора принтера. – azamsharp
Пробовал ли вы код из всплывающего окна? Похоже, это то, что вызывает проблему. – sglantz