我有一个.Net应用程序,它动态创建一个小的HTML页面,并使用JavaScript的document.open方法在新窗口中弹出。所有这些功能都正常工作。
现在我想在HTML页面上添加一个按钮来打印该页面。我尝试使用以下代码但没有成功:
当在弹出窗口中点击按钮时,没有任何反应。但是,当将此页面的源代码保存并作为单独的页面加载到浏览器中时,打印按钮可以完美地工作。现在问题似乎是在打开弹出窗口后向其中写入代码所导致的。有人知道如何解决这个问题或者有任何替代方法吗?
编辑:
我尝试了其他方法,但结果相同。
现在我想在HTML页面上添加一个按钮来打印该页面。我尝试使用以下代码但没有成功:
<a href='print.html' onClick='window.print();return false;'>
<img src='images/printer.png' height='32px' width='32px'></a>
当在弹出窗口中点击按钮时,没有任何反应。但是,当将此页面的源代码保存并作为单独的页面加载到浏览器中时,打印按钮可以完美地工作。现在问题似乎是在打开弹出窗口后向其中写入代码所导致的。有人知道如何解决这个问题或者有任何替代方法吗?
编辑:
我尝试了其他方法,但结果相同。
<input type='button' onclick='window.print()' value='Print' />
并且
<a href='javascript:window.print()'>
<img src='images/printer.png' height='32px' width='32px'></a>
再次编辑:
以上代码在Firefox中有效,但在IE7中无效。有什么解决方法吗?
再次编辑:
这里是一个测试用例,使用npup在下面发布的代码。与弹出窗口的代码存储在单独的HTML文件中不同,我打开了一个空白URL,然后将代码写入其中。这一步似乎是导致问题的原因。
<html>
<head>
<title>main</title>
</head>
<body>
<h1>
Pop & print</h1>
<button onclick="pop();">
Pop</button>
<script type="text/javascript"></script>
</body>
</html>