zoukankan      html  css  js  c++  java
  • 在ASP.net中实现一个万能的“返回”按钮。

    前台设计,尤其是管理功能的设计,允许用户后退是一个很人性化的设计,可以使用一个按钮,给它绑一个history.go(-1)的js事件即可。但如果当前页面发生了提交(PostBack)后(页面提交在.net的服务器控件中使用的非常频繁),history.go(-1)就不太好使了。

    怎么办呢?可以这样做,.net你不是喜欢提交页面吗?我就记住你的提交次数,然后你提交几次我就go几次。设计一个这样的服务器控件BackButton。

    BackButton.ascx:

    <asp:Button ID="BtnReturn" runat="server" Text="返回"/>


    BackButton.cs:

    public partial class UC_BackButton : System.Web.UI.UserControl
    {
    protected int PostBackCount
    {
    get { return ViewState["PostBackCount"] == null ? 0 : (int)ViewState["PostBackCount"]; }
    set { ViewState["PostBackCount"] = value; }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
    if (IsPostBack)
    {
    PostBackCount++;
    }
    BtnReturn.OnClientClick = "javascript:history.go(-" + Convert.ToString(PostBackCount + 1) + ");return false;";
    }
    }

    前台代码很简单,就是一个.net服务器控件的按钮,后台有点技巧,利用ViewState将页面被提交的次数记录下来,然后设置点击按钮时候的js代码,提交几次我就往回go几次,管你呢。 呵呵

  • 相关阅读:
    转:Jenkins自动化部署入门详细教程
    详解MySQL锁
    常见的内存溢出与解决办法
    read IEEE Standard for verilog(1)
    verilog之状态机
    quantus18的signaltap逻辑分析仪
    英语文档之关键词统计
    cadence软件画版图操作
    英语文档之vivado界面
    verilog之wire和reg
  • 原文地址:https://www.cnblogs.com/overload/p/2238987.html
Copyright © 2011-2022 走看看