总结一下跳转方式:

<a>标签

<a href=”home.aspx”></a>

HyperLink控件

Asp.net 服务器端控件 属性NavigateUrl指定要跳转到的Url地址,NavigateUrl是可以在服务器端使用代码修改,这个区别于<a>,由于HyperLink本身没有事件所以要在服务器端其它事件中设置NavigateUrl.

<Asp:HyperLink id=”hyperlink” runat=”server” NavigatoeUrl=”test.aspx”>ok</Asp:HyperLink>

Response.Redirect()

.发送一个Http响应到客户端
.通知客户端跳转到一个新的页面
.然后客户端再发送跳转请求到服务器端
.页面跳转之后内部控件保存的所有信息丢失
.当A跳转到B,B页面将不能访问A页面提交的数据信息
使用这个方法使用这个方法跳转后浏览器地址栏的Url信息改变,可以使用Session Cookies Application等对象进行页面间的数据传递,重定向操作发生在客户端,总共涉及到两次与Web服务器的通信:一次是对原始页面的请求,另一次是重定向新页面的请求.

JavaScript

string newuri = "<script language=javascript>history.go(-2);</script>";
Response.Write(newuri );

Server.Transfer()

实现页面跳转的同时将页面的控制权进行移交,页面跳转过程中Request Session等保存的信息不变,跳转之后可以使用上一个页面提交的数据,跳转之后浏览器地址栏的Url不变.
这种方法的重定向请求是在服务器端的进行的,浏览器不知道页面已经发生了一次跳转

Server.Execute()

该方法允许当前页面执行同一个Web服务器上的另一个页面,页面执行完毕之后重新回到原始页面发出Server.Execute()的位置。
这种方式类似针对页面的一次函数调用 被请求的页面可以使用原始页面的表单数据和查询字符串集合,被调用页面的Page指令的EnableViewStateMac属性设置为False.

为确保HTML输出的合法性 最好使用Response.Redirect;

因为Server.Execute 或者Server.Transfer方法返回给客户端的页面包含多个<Html><body>标记,不是合法的HTML页面,在非IE浏览器中可能会发生错误。
Server.Transfer在服务器端执行重定向,避免了不必要的网络通信,具有更好的性能和浏览效果。

ASP.NET页面跳转的更多相关文章

  1. 总结asp.net页面跳转

    ASP.NET页面跳转相关知识 一.<a>标签   1. <a href=”test.aspx”></a>   2. 这是最常见的一种转向方法; eg:  < ...

  2. Asp.net页面跳转Session丢失问题

    原本去年在做项目时,写好的一记篇博客分享给大家. Asp.net页面跳转Session丢失问题   编写人:CC阿爸 2014-4-2 l  近来在做泛微OA与公司自行开发的系统集成登录的问题.在使用 ...

  3. ASP.NET页面跳转的三大方法详解

    ASP.NET页面跳转有什么方法呢?,现在给大家介绍三种方法,他们的区别是什么呢?让我们开始吧: ASP.NET页面跳转1.response.redirect 这个跳转页面的方法跳转的速度不快,因为它 ...

  4. asp.net页面跳转sessionid会变

    今天发现在一个Asp.net站点中, 同一次登录, 不停刷新页面或者页面跳转, 此时后台Session的SessionID总是变化的. 创建一个页面,添加一个button,后台代码非常简单,如下   ...

  5. ASP.NET页面跳转的三种方法比较

    在ASP.NET下,经常需要在页面之间跳转,下面我们来分别介绍一下关于.NET中Response.Redirect(),Sever.Execute(),Server.Transfer() 三种页面跳转 ...

  6. asp.net 页面跳转的方法

    目前知道有4种: 1超链接 2.response.redirect("urlString") 3.server.transfer("urlString") 4. ...

  7. asp.net 页面跳转传值的几种方式

    参考地址: http://blog.csdn.net/zzzzzzzert/article/details/8486143 protected void Button1_Click(object se ...

  8. asp.net mvc && asp.net 页面跳转

    1.使用传统的Response.Redirect例如string url = "/account/create";Response.Redirect(url); 1.Server. ...

  9. asp .net 页面跳转

    ajax异步 通过ajax去请求数据,然后在js里面得到返回结果,赋值location.href <div> <input id="url" /> < ...

随机推荐

  1. Linux 08

    1按照视频里提出的几点要求完善使ls命令模仿windows下dir命令输出的脚本 {printf $6" "$7" \t";if (substr($1,1,1) ...

  2. NT kernel & System 占用占用80端口

    问题: 1 运行'netstat -ano'发现80端口被pid=4的进程占用 2 打开任务管理器,发现pid=4的进程,其实是system进程,其对应的进程描述是NT kernel & sy ...

  3. HTML3层叠样式表

    层叠样式表:CSS Cascading Style Sheet.V2.1  控制页面样式外观.   一.样式表分三类: 1.内联样式表.--放在元素的开始标记中.--只对当前元素起作用. <in ...

  4. CodeBlocks13.12汉化以及去掉注释及字符串的下划线

    汉化: 在安装目录 D:\Program Files\CodeBlocks\share\CodeBlocks(我的安装目录)下,新建文件夹locale,然后在locale文件夹内建立文件夹zh_CN ...

  5. ASP.NET DataList绑定数据并实现分页

    显示当前页码Label属性 值ID NowPageNumberLabtext    1 ×××××××××××××××××××××显示总页码Label属性 值ID BackPageNumberLabt ...

  6. Ecside基于数据库的过滤、分页、排序

    首先ecside展现列表.排序.过滤(该三种操作以下简称为 RSF )的实现原理完全和原版EC一样, 如果您对原版EC的retrieveRowsCallback.sortRowsCallback.fi ...

  7. jsoup_解析任意网站,做任意网站客户端

    jsoup是一个解析网页源码的开源库,他能按照给定的规则提取出一个网页中的任意元素,和其他网页解析库不同的是,他提取网页内容的方式和css.jquery的选择器非常相似.因此如果你懂得前端的知识,只需 ...

  8. Django建立helloworld自定义页面

    目录介绍 按照上一篇初学Django首先建立起一个默认站点,生成如下的目录结构: manage.py 一种命令行工具,允许你以多种方式与该 Django 项目进行交互. 键入python manage ...

  9. zend studio 使用断点调试

    1, 下载 Xdebug 1 # 下载地址 2 # http://xdebug.org/download.php 3   4 # 寻找和自己所安装的 php 版本对应的 Xdebug 下载 5 # 对 ...

  10. mysql性能优化学习笔记(3)常见sql语句优化

    一.max()优化mysql> explain select max(payment_date) from payment;+----+-------------+---------+----- ...