javascript - 如何在 Postback 上维护 UI 元素状态? (ASP.NET MVC)

标签 javascript jquery jquery-ui asp.net-mvc-3

所以我打算创建一个包含许多可动画 UI 元素的复杂页面。我想想出一种干净的方法来维护这些可动画 UI 元素的状态(展开/折叠、突出显示等)。我有一些想法,但我只想知道是否有人知道一些 js 框架可以做到这一点,所以我不会重新发明轮子。

编辑

目前我的想法是:

1) 在表单发布时,获取每个 UI 元素的状态并将其添加到 POST 数据中。我正在考虑用一个特殊的 CSS 类(一种用于跟踪的注册类型)标记我想要跟踪状态的所有 UI 元素,并让每个元素都支持一些回调,这将允许我以多态方式获取它们的状态(每个 UI 元素对状态有自己的理解,例如展开、选定索引、突出显示等)

2) 为我的 UI 元素创建 HtmlHelpers,它可以识别从客户端发送的状态信息并以正确的状态输出 UI 元素的 html(我更喜欢在服务器端设置状态而不是让 js 到处弹出东西尝试在客户端恢复状态的地方......对吧?)

3)不像 WebControls 或 ViewState 那样复杂或臃肿

是否有一个框架可以做类似的事情并且做得更好,如果没有,我提出的框架听起来是个好主意吗?

最佳答案

我猜 KnockoutJS可能对你有帮助,因为你可以整合它上面的所有数据/状态管理逻辑,然后按照你喜欢的方式保存它,即使用 .toJSON() 函数并将它发送到服务器。

也许您可以将它与@Schwarty 的 localStorage 解决方案集成?

关于javascript - 如何在 Postback 上维护 UI 元素状态? (ASP.NET MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5972239/

相关文章:

javascript - 为什么 IE7 和 IE8 说它是 'hasLayout' 而不是?

javascript - 努力实现 jQuery 日期选择器

javascript - 可丢弃重新启用 - Jquery

jquery-ui - IE6 : select inside jQuery tabs does not render dropdown list

javascript - jQuery JavaScript : adding browser history back with hashtag?

javascript - 无法获取属性值 'nodeValue' : object is null or undefined in IE

javascript - 需要等同于 jQuery 的 JavaScript 在文本字段的值更改时更改下拉列表的值

javascript - 将值传递给可拖动和可放置的数组

javascript - 如何判断某个地方是否正在调用 JS 函数?

javascript - 当我在 HTML 中使用按钮标签调用 Javascript 函数(该函数又使用 Jquery)时,Jquery 失败