【发布时间】:2011-09-28 19:47:41
【问题描述】:
我有一个会话变量,它改变了关于页面外观的一些事情。我有一个按钮可以更改此会话变量的值。但是...... onClick 事件发生在页面加载之后,所以当我根据按钮点击更新会话变量时,已经太晚了,页面已经加载了。
理论上我可以将所有关于更改显示的逻辑放入一个函数中并从页面加载中调用它,然后在变量更新后从 onclick 再次调用它。但这是不切实际的:有许多用户控件检查值,在许多不同的页面上以不同的组合使用。我必须对每个页面上的用户控件列表进行硬编码,如果有人向特定页面添加了新的用户控件,他们必须记住更新这个函数,这很蹩脚。
有没有办法强制页面重新加载? (我可以使用 response.redirect 返回给自己,它可以工作。如果所有其他方法都失败了,我想这就是我要做的。但这意味着需要额外往返服务器,这很笨拙。)
有没有办法在页面加载之前处理onclick?
其他一些神奇的解决方案?
【问题讨论】:
-
在 On_click 中设置会话变量中的值并对同一页面进行重定向调用 Response.redirect("YourPage.aspx")
-
@EmaadAli - 阅读问题。 OP 已提及此选项。
-
我知道。我有这个想法,所以我再次提到它。