我在 Stack Overflow 上查看过类似的问题,但无法找到解决这个特定问题的方法。我有一个简单的(不是真的,但让我们假装)ASP.NET 页面,里面有一个更新面板。
在此更新面板中有一个HiddenField
控件,其值将通过我自己的自定义 JavaScript 设置/更新。正如我在使用 Firebug 的 DOM 中看到的那样,该值已更新。
在此旁边HiddenField
有一个LinkButton
调用 JavaScript 来修改HiddenField
using的值OnClientClick
(这有效)。LinkButton
也有一个处理程序,OnClick
在值被修改后执行。
但是,在OnClick
处理程序中,我得到了 的初始值,HiddenField
而不是 JavaScript 设置的值!
为什么是这样?这是“ PEBKAC ”的案例吗?
编辑:尝试了同样的事情,TextBox
但没有任何成功。还尝试在提交表单之前使用 Firebug 手动修改值,但没有任何成功。
编辑 2:我刚刚意识到这Page_Load
是在处理程序之前调用的OnClick
,这把事情搞砸了。我不会删除这个问题,因为其他人可能有同样的问题,并且可能会发现这个问题很有价值。