使用底层客户端JSON数据连接,构建和操作JQuery UI

时间:2013-03-24 15:45:55

标签: javascript jquery ajax json

我使用的是静态JSON文件,用于填充基于JQuery的可排序列表。

例如:

[
     { "id": 0, "movie_name": "Manhattan", "location":"NY" },
     { "id": 1, "movie_name": "A Wonderful Life" }
]

网页遍历JSON数组并构建movie_name字段的可排序列表以及每个字段的附加文本框,例如,允许用户输入评论。还允许用户重新排序最终将在服务器端持久化的列表。每个项目可能包含不会出现在其他项目中的字段,例如,第一个项目中的“位置”,而不是第二个项目中的“位置”。 “id”字段出现在每个项目中,表示电影的唯一标识符,但不显示。

一旦完成,我希望用户能够将列表提交回服务器,并添加或重新排序为JSON,具体内容如下:

[
     { "id": 1, "movie_name": "A Wonderful Life", "review":"user entered data" }
     { "id": 0, "movie_name": "Manhattan", "location":"NY", "review":"user entered data" },
]

我不确定维护和构建发送回服务器的JSON数组的最佳方法。

我的主要问题是,在操作和提交UI组件时,如何将UI组件连接回底层JSON对象?

最好在更改字段时更新基础JSON数据(如果是,如何?),或者在用户提交数据后重建JSON数据(后一种方法不一定能够查看所有非数据) - 显示的字段)。

希望这是有道理的。 :)

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

JSON是一种数据格式,而不是数据。在您的示例中,您应该在页面加载中将这些json解析为一些类似哈希的对象。然后在每个ui更新 - 更新该对象。 最近提交 - 将该对象转换回类似数组的结构,然后只将其转换为JSON。现在你将在服务器上拥有它。