我知道有很多关于禁用ViewState如何阻止文本框在刷新/回发后保持值的信息。我不能鳍是关于如何规避这种行为的信息。
这就是我需要这样做的原因。我有一个通过AJAX更新数据库的表单。每次用户更改字段时,都会立即更新数据库。因此,除了数据库之外,没有理由将值存储在任何地方。
请考虑以下情况。
我们希望FirstName框现在具有“Dave”的值,但它显示“Bob”。那么如何强制ASP加载db?
中的值答案 0 :(得分:1)
用户点击刷新按钮。
在此步骤中,您将重新读取数据库中的数据,并强制使用该数据填充控件。如果页面中的所有“事件”实际上都是由AJAX请求处理的,那么听起来只有两个有意义的“WebForms事件”是Page_Load
和Click
处理程序用于“刷新”按钮。这两个事件中的一个应该重新填充数据库中的控件。
(或者没有“刷新”按钮,用户只是通过浏览器功能重新加载页面?在这种情况下,Page_Load
应始终填充数据库中的控件。)
答案 1 :(得分:1)
我遇到的问题似乎与在正确的页面事件期间创建和填充控件有关。通过在Page_Init中创建控件并在Page_Load中填充它们来解决此问题。