码迷,mamicode.com
首页 > Web开发 > 详细

asp.net中Response.write与Response.Redirect同时使用

时间:2015-04-29 10:10:18      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:asp.net   javascript   js   response.write   response.redirect   

今天在做项目的时候出现了个问题,Response.write与Response.Redirect同时使用的时候,直接跳转到Response.Redirect后的界面,没有显示出Response.write,觉得不美观,就去网上找了解决办法

原因:1.Response.Write与Response.Redirect()同属服务器端处理,而写入的js属于客户端处理。没有效果的原因就是,尽管Response.Write已经将JS成功写入了准备发送给客户端的页面,但由于之后紧跟了Response.Redirect,所以实际上准备发送给客户端的页面并没有发送给客户端,而是直接跳转到SysProductsList.aspx页面上,js提示自然就显示不出来了。

   2.

Response.Write("<script>alert(‘标题不能为空!‘);</script>");

在当前页面添加了一个JS事件;该事件会在页面载入完成后,再执行客户端JS脚本;

    Response.Redirect("Welcome.aspx");

在页面载入到这个地方的时候,已经跳走了,所以没有给 客户端的JS脚本有机会;

一个是服务器端跳转,一个是客户端JS脚本;
如果你用的是客户端JS跳转就没问题;

都是网上找的

解决办法:(在网上找了很多,但大多数我这里都用不了,挑一个能用的发上来)

 if (ds.Tables[0].Rows.Count == 1)
            {
                 
             //  Response.Write("<script language=‘javascript‘>alert(‘登录成功!‘);history.back();</script>");
                //Response.Write("<script language=‘javascript‘>alert(‘登录成功!‘);history.back(</script>;window.location.href=‘学生界面.aspx‘</script>");
               


Response.Write("<script>alert(‘登录成功!‘);location.href=‘学生界面.aspx‘;</script>");//《—这货能用
            }

asp.net中Response.write与Response.Redirect同时使用

标签:asp.net   javascript   js   response.write   response.redirect   

原文地址:http://blog.csdn.net/hhooong/article/details/45342101

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!