response跳转页面前弹出alert提示框分析及常见的弹出框使用

来源:互联网 发布:js获取时间的年月日 编辑:程序博客网 时间:2024/04/20 00:35

如何在Response.Redirect前弹出alert对话框

  我曾遇到这样的问题,代码如下:
  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)

       经过实践,完全成功!

asp.net弹出对话框的问题

在编写web程序时,有时候我们希望程序在运行时,能弹出提示对话框,比如告诉用户注册已经成功或者失败,或者一些错误操作的提示和修改信息时的确认提示。

在window程序中,我们可以用MessageBox.show("......")来实现这些功能,可是在asp.net程序中却不能这么做,这时,一个较好的方法就是插入javascript脚本语言来实现
       在javascript脚本语言中有三种方式的对话框:
1:alert ,也就是对用户的操作作一些提示,它是一个只带有“确定”按钮的模式对话    框。       

         在asp.net中可以这样用:Response.Write("<script>alert('对话框上提示的内容')</script>");

2:confirm,一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断
 它是一个带有“确定”按钮和“取消”按钮的模式对话框。这种对话框在有的场合非常重要,它可以给用户两种选择。

         在asp.net中这种对话框有两种添加的方法:我用的两种方法都是通过给按钮添加属性来实现的,因为在我应用的时候,都是对用户点击了某个按钮后给出确认提示。

      一种方法是:在Page_Load()事件中,给希望给出确认提示的按钮增加属性:

                    Button.Attributes.Add("onclick","return getconfirm();");

        然后打开这个页面所对应的.ascx文件,切换到html,在其中添加以下代码:

                          <script>
                      function getconfirm()
                      {
                         if (confirm("你要执行这个操作吗?")==true) 
                             return true;
                          else
                              return false; 
                        }
                    </script>

           第二种方法是:在Page_Load()事件中,给希望给出确认提示的按钮增加属性:

              Button.Attributes.Add("onclick", "return confirm('你要执行这个操作吗?');");

3: promote,一个带输入的对话框,可以返回用户填入的字符串,常见于某些留言本或者论坛输入内容那里的 插入UBB格式图片 ,这种对话框在asp.net中较少用到。

下面给大家介绍几种比较常见的js实现页面跳转的方式

第一种:

1
2
3
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>

第二种:

1
2
3
4
<script language="javascript">
alert("返回");
window.history.back(-1);
</script>

第三种:

1
2
3
<script language="javascript">
window.navigate("top.jsp");
</script>

第四种:

1
2
3
<script language="JavaScript">
self.location='top.htm';
</script>

第五种:

1
2
3
4
<script language="javascript">
alert("非法访问!");
top.location='xx.jsp';
</script>

接着给大家介绍js使用弹出窗口实现页面跳转的几种方式

———————————————————————————————————

第一种:弹出选择框跳转到其他页面

1
2
3
4
5
6
7
8
9
10
<script language="javascript">
<!--
function logout(){
if (confirm("你确定要注销身份吗?是-选择确定,否-选择取消"))...{
window.location.href="/logout.asp?act=logout"
}
}
-->
</script>
<input type="button" onclick="logout()" value="注销"/>

第二种:弹出提示框跳转到其他页面

1
2
3
4
5
6
7
8
9
<script language="javascript">
<!--
function logout(){
alert("你确定要注销身份吗?");
window.location.href="/logout.asp?act=logout"
}
-->
</script>
<input type="button" onclick="logout()" value="注销"/>

页面自动跳转到其他页面
———————————————————————————————————

只需要在页面加入一行代码

1
<meta http-equiv="Refresh" content="5; url=http://www.codepub.com" />

其中,content="5; url=http://www.codepub.com"中的5表示5秒后跳转,可以直接设置为0

该代码多用于用户登陆时的页面跳转

把 onClick="windows.open("Submit.html")"

改成

1
2
onClick="window.location.reload('Submit.html');"
window.open('Submit.html')

阅读全文
0 0
原创粉丝点击