在asp.net代码后面直接响应之前运行一个javascript代码

时间:2015-02-19 08:24:32

标签: javascript asp.net response.redirect

我在.aspx页面中有这个代码:(它可以防止页面在没有confrim的情况下响应)

    <script type="text/javascript">
         window.onbeforeunload = confirmExit;
         function confirmExit() {
             return 'آیا مایل به خروج از صفحه هستید؟';
         }

    </script>

我想下载一个包含以下代码的文件,我需要运行一个javascript代码来禁用高级代码,但我的javascript代码不起作用。

ScriptManager.RegisterStartupScript(this, typeof(Page), "DisableOnbeforeunload", " window.onbeforeunload = '';", true);
Response.Redirect("doc1.docx", false);

1 个答案:

答案 0 :(得分:1)

您需要使用JavaScript在客户端进行重定向:

ScriptManager.RegisterStartupScript(this, typeof(Page), "DisableOnbeforeunload",
   "window.onbeforeunload='';window.location.href='doc1.docx';", true);

说明:在您执行Response.Redirect的位置,不会向客户端发送更多内容(包括启动脚本),只会发送重定向标头。