热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET页面跳转的方法介绍

1、利用HTML标签1:测试页这个例子十分的简单,只要通过标签的href属性制定要跳转的页面的url就可以实现跳转。2、HyperLink控件这是最常见的一种转向方法;1)As

1、利用HTML标签





 


这个例子十分的简单,只要通过标签的href属性制定要跳转的页面的url就可以实现跳转。


2、HyperLink控件


这是最常见的一种转向方法;
1)Asp.net 服务器端控件
属性NavigateUrl指定要跳转到的Url地址 
2)NavigateUrl是可以在服务器端使用代码修改,这个区别于
 
3)由于HyperLink本身没有事件所以要在服务器端其它事件中设置NavigateUrl


4)实例代码




ok


 


3、Response.Redirect()方法


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


这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但他可以跳
转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护


6)实例代码






 


我们现在设计页面中添加一个Button控件,然后我们在相应的cs文件中红编写一下代码。




protected void Button1_Click1(object sender, EventArgs e)
{
Response.Redirect(
"http://www.baidu.com");
}


 


4、Server.Transfer()方法



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


速度快,只需要一次postback
,但是它必须是在同一个站点下,因为它是server的一个方法。另外,他能跳过登录保护。


5)实例代码




protected void Button1_Click(object sender, EventArgs e)
{
Server.Transfer(
"Server2.aspx");
}


 


注意:这里的路径只能是虚拟路径,也就是说可以制定为同一目录下的页面,但是不能制定绝对的地址比如说 >www.baidu.com.


5、 Server.Execute()方法


 


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


5)实例代码




protected void Button1_Click(object sender, EventArgs e)
{
Server.Execute(
"Server2.aspx");
}


 


注意:这里也只能使用虚拟路径。


6、Javascript实现跳转


我们可以页面中利用Javascript编写函数,来实现跳转。





bubuko.com,布布扣 alt=""
src="https://img8.php1.cn/3cdc5/18867/5a0/8ddec6ab97c3c5cc.gif">


bubuko.com,布布扣 alt=""
src="https://img8.php1.cn/3cdc5/18867/5a0/8ddec6ab97c3c5cc.gif">

 


7、Respone.Write()


可以通过在Write方法中传入脚本语言Javascript来实现页面跳转。




Respose.Write( " ");


 


三、页面跳转总结


1)当需要把用户跳转到另一台服务器上的页面的时候使用redirect 
2)当需要把用户跳转到非aspx页面时候,如html使用redirect 
3)需要把查询字符串作为url一部分的时候保留传给服务器的时候,因为其他2种方法不能做到2次postback,把数据先带回服务器使用redirect 
4)需要aspx页面间的转换(不涉及登录)
使用transfer 
5)当需要把aspx页面的输出结果插入到另一个aspx页面的时候使用execute方法。 
6)如果要让用户来决定何时转换页面以及转到哪一个页面,超级链接最适合。 
7)如果要用程序来控制转换的目标,但转换的时机由用户决定,使用Web服务器的HyperLink控件,动态设置其NavigateUrl属性。 
8)如果要把用户连接到另一台服务器上的资源,使用Response.Redirect。 
9)如果要将查询字符串作为URL的一部分保留,使用Response.Redirect。 
10)如果要将执行流程转入同一Web服务器的另一个ASPX页面,应当使用Server.Transfer而不是Response.Redirect,因为Server.Transfer能够避免不必要的网络通信,从而获得更好的性能和浏览效果。 
11)如果要捕获一个ASPX页面的输出结果,然后将结果插入另一个ASPX页面的特定位置,则使用Server.Execute。 
12)如果要确保HTML输出合法,请使用Response.Redirect,不要使用Server.Transfer或Server.Execute方法。

ASP.NET 页面跳转的方法介绍,布布扣,bubuko.com


推荐阅读
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • LDAP服务器配置与管理
    本文介绍如何通过安装和配置SSSD服务来统一管理用户账户信息,并实现其他系统的登录调用。通过图形化交互界面配置LDAP服务器,确保用户账户信息的集中管理和安全访问。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 网络爬虫的规范与限制
    本文探讨了网络爬虫引发的问题及其解决方案,重点介绍了Robots协议的作用和使用方法,旨在为网络爬虫的合理使用提供指导。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 自定义滚动条美化页面内容
    当页面内容超出显示范围时,为了提升用户体验和页面美观,通常会添加滚动条。如果默认的浏览器滚动条无法满足设计需求,我们可以自定义一个符合要求的滚动条。本文将详细介绍自定义滚动条的实现过程。 ... [详细]
  • 微软推出Windows Terminal Preview v0.10
    微软近期发布了Windows Terminal Preview v0.10,用户可以在微软商店或GitHub上获取这一更新。该版本在2月份发布的v0.9基础上,新增了鼠标输入和复制Pane等功能。 ... [详细]
  • 解决Win10下MySQL连接问题:Navicat 2003无法连接到本地MySQL服务器(10061)
    本文介绍如何在Windows 10环境下解决Navicat 2003无法连接到本地MySQL服务器的问题,包括启动MySQL服务和检查配置文件的方法。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • 基于iSCSI的SQL Server 2012群集测试(一)SQL群集安装
    一、测试需求介绍与准备公司计划服务器迁移过程计划同时上线SQLServer2012,引入SQLServer2012群集提高高可用性,需要对SQLServ ... [详细]
  • ZooKeeper 入门指南
    本文将详细介绍ZooKeeper的工作机制、特点、数据结构以及常见的应用场景,包括统一命名服务、统一配置管理、统一集群管理、服务器动态上下线和软负载均衡。 ... [详细]
  • 数字资产量化交易通过大数据分析,以客观的方式制定交易决策,有效减少人为的主观判断和情绪影响。本文介绍了几种常见的数字资产量化交易策略,包括搬砖套利和趋势交易,并探讨了量化交易软件的开发前景。 ... [详细]
  • importpymysql#一、直接连接mysql数据库'''coonpymysql.connect(host'192.168.*.*',u ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 本文介绍了如何使用 CMD 批处理脚本进行文件操作,包括将指定目录下的 PHP 文件重命名为 HTML 文件,并将这些文件复制到另一个目录。 ... [详细]
author-avatar
mobiledu2502881683
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有