我在ASP.NET 4.0的一个应用程序中使用Jquery AJAX。它是一个Web应用程序。 我使用了服务器端编码+客户端编码方法,即使用Jquery,JS和AJAX。
我有一些包含在div元素中的控件,我通过dropdownlist的客户端索引更改事件使它们隐藏/显示。
当由于服务器端验证或任何其他实例而发生回发时,div会保留旧值,这些值是其初始状态。例如:div第一次可见,我通过客户端下拉列表的索引更改隐藏它,所以当回发时它再次可见虽然它应该被隐藏。
我已经使用hiddenfield来存储值,并在jquery document.ready event中通过Hiddenfield显示/隐藏div。
现在,我想问一下是否有任何其他方法可以获得理想的结果。我期待一些标准的方法来做到这一点,因为现在几乎所有的应用程序都是客户端和AJAX启用。
答案 0 :(得分:0)
如果要重新加载整个页面,则必须将状态存储在某处。 AJAX允许您减少/消除页面的完全重新加载,因此它提供了保持状态的错觉。
ASP.Net(我假设问题中的网络表单)可以通过在Visible
中添加属性来“记住”某些值(例如div
的{{1}}属性) 。这通常需要完整的回发或ViewState
(两者都不太理想,但确实有效)。