返回上一页的这个东东在我们做项目的时候一般是用于填写完表单后确认的时候,有对原来输入的数据进行修改或者更新时用的,或者是因为网站为了方便浏览者而有心添加的一个东东,一般这种功能的实现在ASP.NET中都是用一个Button控件来实现的,实现的方法有很多,今天恰好在做项目时碰到要用这个东东,我就把能实现" 返回上一页","返回前一页"的几种方法总结了一下,供大家学习之用,请多多指教: 

其实要实现这个功能主要还是要用到javascript脚本语言!
方法一:
在asp.net的aspx里面的源代码中
<input type="button onclick="javascript:window.history.go(-1);"value="返回上一页"> 浅析:这个是用了HTML控件,通过一个onclick的事件,调用了javascript中的一个方法就可以了。这个是最简单的了,也同样适用于静态页面,ASP页面等。
方法二:
利用Reponse.write() 如果你对ASP有一定的了解,那么对Response.write这个东东就不会陌生了,方法一是直接有HTML页面中实现,则这个则是在后台环境中实现(这个说法好像不是很规范,呵呵) Response.write("<script language=javascript>history.go(-2);</script>) <a href="#" onclick="javascript:history.back();">返回前一页</a> 这里为会么要采用-2的值呢,我个人认为是这样的:因为在asp.net中的页面,当你按下一个button后,由于页面中会实现page.postback的缘故,实际上在这其中是刷新了两次页面,我们要的是第一次的,所以就...... 方法三: 利用Response.Redirect() 或 server.transfer() 在page_load中加入
if(!IsPostBack) ViewState["retu"]=Request.UrlReferrer.ToString(); 而在在返回按钮事件中 Response.Redirect(ViewState["retu"].ToString()); 或Server.Transfer (ViewState["retu"].ToString()); 浅析:
Request.UrlReferrer可以获取客户端上次请求的url的有关信息,我们在使用这个的时候最好对其进行一个判断
if(ViewState["UrlReferrer"]!=null) Response.Redirect(ViewState["UrlReferrer"].ToString(); else{ Response.write("对不起,当前是最前页码“);这样才好使一点点喔
} 在使用Request.UrlReferrer时还要注意: 1. 如果上一页面使用document.location方法导航到当前页面,Request.UrlReferrer返回空值
2. 如果有A,B两个页面,在浏览器中直接请求A页面,在A页面的中Page_Load事件中导航到B 页面,则 Request.UrlReferrer返回空。因为 在Page_load事件中页面还未初始化,所以无法记录当前页的信息,导航到b页面也就无法获得上一页面的信息 3. 点击刷新按钮不会改变Request.UrlReferrer
方法四: 这个方法估计很少人用,不过我试了一下,也还很不错喔
在button的onClick事件中输入
this.RegisterClientScriptBlock("e", "<script language=javascript>history.go(-2);</script>"); 一样可以 返回到上一页
方法五: 这种方法也比较麻烦,不建议大家使用,这个好像是ASP里面的。
<a href=<%=request.servervariable("http_Referre)%> <asp:image id="imageback" visible = true" imagurl="上一页" runat="server"/></a>
 转帖:http://www.cnblogs.com/xiaoli0414/articles/778980.html

 .带有确认和取消分支按钮的窗口

       放置一个服务器控件 在服务器控件的button1_onclick事件中执行插入命令 。在loadpage() 中增添  button1.Attributes.Add("onclick","return confirm('确认提交数据吗?');")

 然后在按钮的单击事件中加入确认后要执行的代码即可

 .简单的提醒窗口

    Response.Write("<script language=javascript>alert("xxxxxxxxxxxx");</script>");

 .根据某一条件弹出窗口或者跳转页面

    if(超过额度)

   { 

        Response.Write("<script>if(confirm('超过额度,是否继续?')) location='B.aspx';else      history.go(-1);</script>"); 

   } 

  else

  { 

      Response.Write("<script>location='B.aspx';</script>"); 

  } 

 string str="<script language='javascript'>alert('省局数据不能进行修改!');</script>";  

 Page.RegisterStartupScript("dd",str); 

 .window.close关闭窗口,不弹出系统提示,直接关闭

 当我们用这种方法:Response.Write("<script>window.close()</script>")
总是提示什么:你查看的网页试图关闭的提示
如何去掉提示,直接关闭窗体?
可以用以下方法:
Response.Write("<script>window.opener=null;window.close()</script>")
只有ie6才支持.
opener只要设为任何值都可以,不会出现提示 如果是通过子窗体关闭父窗体时怎么做呢
子窗体(弹出窗体):
同理可得:
Response.Write("<script>window.opener.top.opener=null;window.opener.top.close()</script>")

asp.net中的窗口弹出实现,包括分支窗口 . ASP.NET返回上一页面实现方法总结 .的更多相关文章

  1. asp.net 中点击button弹出模式对话框,选择值后返回到页面中(window.showModalDialog实现)

    <td>现从事专业</td><td>       <asp:TextBox ID="tbMajor" runat="server ...

  2. ASP.Net后台 实现先弹出对话框,再跳转到另一个网页的实现方法

    解决办法如下: Response.Write("<script>alert('想在对话框中显示的内容');window.navigate(‘要转到的页面的URL’)</sc ...

  3. [转] 在Asp.net前台和后台弹出提示框

    一.在前台弹出提示框 1.点击"A"标记或者"控件按钮"弹出提示框 <asp:LinkButton ID="lbtnDel" runa ...

  4. asp.net导出excel并弹出保存提示框

    asp.net导出excel并弹出保存提示框 2013-07-12 | 阅:1  转:78   |  分享  腾讯空间 人人网 开心网 新浪微博 腾讯微博 搜狐空间 推荐给朋友 举报          ...

  5. C# Winform在win10里弹出无焦点的窗口

    原文:C# Winform在win10里弹出无焦点的窗口 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/wangmy1988/article/det ...

  6. jquery3和layui冲突导,致使用layui.layer.full弹出全屏iframe窗口时高度152px问题

    项目中使用的jquery版本是jquery-3.2.1,在使用layui弹出全屏iframe窗口时,iframe窗口顶部总是出现一个152px高的滚动窗口无法实现真正全屏,代码如下: <!DOC ...

  7. bootstrap中popover.js(弹出框)使用总结+案例

    bootstrap中popover.js(弹出框)使用总结+案例 *转载请注明出处: 作者:willingtolove: http://www.cnblogs.com/willingtolove/p/ ...

  8. 点击文字弹出一个DIV层窗口代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  9. 在没有界面的类中,实现弹出UIAlertView || 在没有界面的类中,刷新程序界面 思路

    +(DisplayErrorMsg *)sharedDisplayErrorMsg { static DisplayErrorMsg *instance = nil; @synchronized(in ...

随机推荐

  1. SqlServer中——查找杀死阻塞进程

    查找阻塞进程: SELECT blocking_session_id '阻塞进程的ID', wait_duration_ms '等待时间(毫秒)', session_id '(会话ID)' FROM ...

  2. [转]C#操作注册表

    原文链接:http://www.cnblogs.com/txw1958/archive/2012/08/01/csharp-regidit.html 下面我们就来用.NET下托管语言C#注册表操作,主 ...

  3. PHP值传递和引用传递的区别

    PHP值传递和引用传递的区别.什么时候传值什么时候传引用 (1)按值传递:函数范围内对值的任何改变在函数外部都会被忽略 (2)按引用传递:函数范围内对值的任何改变在函数外部也能反映出这些修改 (3)优 ...

  4. Mybatis学习--Mapper.xml映射文件

    简介 Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心. 映射文件中有很多属性,常用的就是parameterType(输入类型 ...

  5. zabbix自动发现功能实现批量web url监控

    需求: 现在有大量url需要监控,形式如http://www.baidu.com ,要求url状态不为200即报警. 需求详细分析: 大量的url,且url经常变化,现在监控用的是zabbix,如果手 ...

  6. LVS + Keepalived + Nginx安装及配置

    1.概述 上篇文章<架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层>(http://blog.csdn.net/yinwenjie/artic ...

  7. 我的第一个jsp程序-实现注册登录留言功能

    1,注册功能,包括两个页面 zhuce.jsp注册页面 <%@ page language="java" contentType="text/html; chars ...

  8. word2007插入页码里面不显示或没选项可点怎么办?

    1.打开Word 2007 2.单击Microsoft Office按钮 (左上角的圆圈) 3.单击“Word 选项”(在页面的右下方) 4.单击“加载”项(页面左边一排,倒数第三个,出现的页面中,向 ...

  9. Echarts-画堆积柱状图

    导入echarts包 <script src='../scripts/libraries/echarts/echarts-all.js'></script> 堆积图js $(f ...

  10. Jquery ui autocomplete简单api

    重要说明:与配置选项类似,Autocomplete插件的方法也不是直接调用,而且通过autocomplete()方法进行间接调用.例如: $("#title").autocompl ...