我试图在asp.net页面的Page_Load中调用以下方法:
Page.ClientScript.RegisterStartupScript(this.GetType(), "print", "<script language=\"javascript\" type=\"text/javascript\">window.print();window.close();</script>");
(或RegisterClientScriptBlock方法)。
这会给出一个消息来关闭IE中的页面(甚至在被称为弹出窗口时没有任何消息时关闭)但是与FF一起使用效果很好。 令人惊讶的是,函数内部的相同事件,当被称为onload of body时,效果会很好。
我可以使用变通办法来完成这项工作,但我想知道为什么这里有不同的行为?有人知道吗?
感谢您的帮助!
[编辑] 这是生成的HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title></head>
<body>
<form method="post" action="Default2.aspx" id="form1">
<div>
This is a test page!
</div>
<script language="javascript" type="text/javascript">window.print();window.close();</script></form>
</body>
</html>
[/编辑]
答案 0 :(得分:1)
试试这个:
<script language="javascript" type="text/javascript">
window.print();
window.onfocus = function () {
window.close();
}
</script>