• response.redirect 前不能弹出对话框的问题(转载)


      我曾遇到这样的问题,代码如下:
      Response.Write   ("<script   language=javascript>alert('订阅成功,请确认手记号码!');</script>");  
      Response.Redirect("personalInfo.aspx");  
       
      结果发现Response.Write   ("<script   language=javascript>alert('订阅成功,请确认手记号码!');</script>");没执行就进行了Redirect,即没有弹出对话框就直接转到另一页去了   
          如何解决这个问题,我在网上查了一下,原因是 Redirect   方法是服务器端方法,而   alert()   是客户端方法,Redirect   由于在服务器端无法判断客户端的 alert 是否已经执行。   
        可以这样:   
        Response.Write   ("<script   language=javascript>alert('......');window.location='Login.aspx'</script>");

         这种方法对于普通的asp.net也许可以,但是我使用的是DNN,我试了一下不行,,它的页面都是tabid等于多少来表示哪个页面的,比如"**/tabid/56/Default.aspx"

    所以我最终的解决方法是:
    Dim altstr As String = ""
    altstr = "恭喜您!订阅成功!\n" + "您的手机号是:" + UserInfo.Profile.Unit + "请确认以便接受订阅信息!"
    Dim jsString As String = ""
                        jsString = String.Format("<script> alert('{0}');window.location='{1}'</script>", altstr, NavigateURL(PortalSettings.UserTabId))

                     Me.Response.Write(jsString)

           经过实践,完全成功!

  • 相关阅读:
    JavaScript 操作CSS
    源码搭建LAMP服务器
    Modified 2 color sort
    python的网络库
    找出有序整数数组中下标与值相同的所有元素
    sql 查看Oralce 数据库连接状态
    oracle 快闪 sql
    Sql server dblink
    昆山桶装水/免费送货上门/
    C# Tostring() 格式大全 [转]
  • 原文地址:https://www.cnblogs.com/shf/p/1289125.html
Copyright © 2020-2023  润新知