热门标签 | 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


推荐阅读
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 在project.properties添加#Projecttarget.targetandroid-19android.library.reference.1..Sliding ... [详细]
  • JSP内置对象之application的作用范围和获取方式
    本文介绍了JSP内置对象之application的作用时间范围、可以在不同浏览器获取的特点,以及获取application对象的方法。通过示例代码展示了在JSP中设置和在servlet中获取application对象的步骤。对于学习JSP内置对象的读者来说,本文具有一定的参考价值。摘要长度为163字。 ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
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社区 版权所有