避免页面重载和控件'按后退键时状态设置为默认值

本文关键字:状态 默认值 设置 重载 控件 | 更新日期: 2023-09-27 18:13:07

我有两个页面,Page1和Page2。在page1上,我在它下面有一个复选框,更新面板和更新面板中的几个控件,如单选按钮和组合框。这是我的客户端。

<asp:checkbox><asp:checkbox>
</br>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
             <ContentTemplate>
                <div id="div1" runat="server">
                <asp:Panel ID="pnl1" runat="server" 
</div>
</Panel>
 </ContentTemplate>
</UpdatePanel>
</br>
<asp:Button></Button>

当用户选中复选框(在更新面板之外)时,pnl1可见,当未选中时,pnl1不可见。复选框被选中。现在,当我点击页面1上的按钮时,它会重定向到页面2。现在我在第二页,点击后退键回到第一页。当我转到第1页时,我希望看到复选框被选中。我正在使用Mozilla。谁能告诉我,我怎么才能做到这一点?

非常感谢您的输入。谢谢你。

避免页面重载和控件'按后退键时状态设置为默认值

如果你重定向到页面,那么首先被称为Page_load函数。我敢肯定,您在这个函数中有一些检查复选框的功能。(同样,如果你在这个页面上有一个按钮,点击它,它会再次调用这个函数)。你可以使用一些布尔变量(这是一个蹩脚的解决方案)或Session。

例如:

protected void Page_Load(object sender, EventArgs e)
    {
        if(Session["abc"] == null) {
            ...
            ...
            Session["abc"] = "something";
        }
    }