Chi*_*keh 1 javascript asp.net
我有一个叫做的活动SubmitResponse().
向用户呈现问题列表和可能的响应.完成响应后,用户单击"预览"按钮.如果响应正确,则用户单击SubmitResponse按钮然后对其进行SubmitResponse()处理.
单击SubmitResponse按钮后,将弹出一个打印屏幕供用户打印副本.这是JS打印功能的调用代码.
finsub.Attributes.Add("OnClick", "print_form()")
Run Code Online (Sandbox Code Playgroud)
工作正常,但有一个问题.我们希望用户可以通过以下代码重定向到显示他/她的回复结果的屏幕.
Response.Redirect("results.aspx")
Run Code Online (Sandbox Code Playgroud)
发生的事情是,一旦用户点击submitResponses按钮,他/她立即被重定向到results.aspx page该打印功能,并且打印功能不再可用.
有办法解决这个问题吗?
Kel*_*sey 10
您可以通过javascript进行打印和重定向.这是一个应该工作的例子:
function doPrint() {
window.print();
document.location.href = "Somewhere.aspx";
}
Run Code Online (Sandbox Code Playgroud)
将其链接到Button:
<asp:Button ID="btnPrint" runat="server" Text="Print"
OnClientClick="doPrint(); return false;" />
Run Code Online (Sandbox Code Playgroud)
对于跨浏览器兼容性,您需要在window.print()调用和重定向之间引入延迟.
我发现以下效果很好(使用JQuery框架在加载后立即打印页面):
<script type="text/javascript">
$(document).ready(function () {
window.print();
setTimeout("closePrintView()", 3000);
});
function closePrintView() {
document.location.href = 'somewhere.html';
}
</script>
Run Code Online (Sandbox Code Playgroud)
这可以很容易地适应"打印"按钮和链接等.
您可以使用此代码:
window.print();
window.onafterprint = function(event) {
window.location.href = 'index.php'
};
Run Code Online (Sandbox Code Playgroud)
使用 window.print() 回调!!
| 归档时间: |
|
| 查看次数: |
20049 次 |
| 最近记录: |