Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

后台往前台写弹窗代码不显示

$
0
0

        在做一功能的过程中,需要添加信息。想着是提示添加成功后,跳转到别的页面(即用Response.Redirect语句跳转到别的页面)。但是,不论我怎么修改注册客户端脚本弹窗的代码,就是不显示。代码如下(只贴出了注册弹窗Js代码和重定向):

        

Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加失败,请联系管理员!" + ex.Message + "');</script>");
Response.Redirect("WaitQueue.aspx");

        按照自己的思路,上面的执行顺序应该是先进行弹窗,然后进行页面跳转。

        可是事实却是:弹窗不出现。

        起初,由于我用了UpdatePanel,所以想着可能需要用scriptmanage里面的静态方法网页面里面写js代码,但是尝试了一下后,还是不行。

        在网上搜了一下,原因如下:

        虽然response.redirect也借助了客户端脚本实现,但是其优先级是浏览器级别的,要高于用户自定义脚本级别。所以输出的js脚本还没有执行,就已经跳转到WaitQueue界面了。

        解决方法就是在往客户端写js代码的时候,将页面跳转自己写一下,而不要采用Response来实现。

        代码如下:

Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加失败,请联系管理员!" + ex.Message + "');location.href='WaitQueue.aspx';</script>");

        即:loaction.href='要跳转到的页面URL'。
作者:jianxin1009 发表于2013-2-6 11:10:11 原文链接
阅读:38 评论:0 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>