如何在页面回发后保留隐藏字段值?

时间:2011-11-11 07:08:19

标签: c# asp.net

我有隐藏的档案

<asp:HiddenField ID="hdnCFIV" Value="0" runat="server" />

我在点击按钮时将隐藏的字段值更改为1

hdnCFIV.Value = "1";

我在页面加载时绑定了datalist

if(hdnCHIV.Value == "1") 

但每次hdnCHIV.Value显示为0因为我的ascx页面正在重新加载,如果我将绑定代码保留在if(!IsPostBack)旁边,那么其他功能将受到影响。

如果在回发后从0变为1,如何保留隐藏字段值。 有没有JavaScript或其他方式?请有人帮助我。

1 个答案:

答案 0 :(得分:2)

问题是Load事件发生的时间早于控件的事件处理。所以目前的工作流程是这样的:

  1. ASP.NET解析页面,将hdnCFIV.Value属性设置为0。
  2. Page_Load被调用,hdnCFIV.Value等于0,因此不执行数据列表绑定。
  3. 处理按钮点击,hdnCFIV.Value设置为1。
  4. 要解决此问题,您需要稍后在hdnCFIV.Value设置为1时执行datalist绑定。您可以在同一个按钮点击处理程序或Page_PreRender中执行此操作。