我想使用HTML模板渲染一些JSON数据。
我还没有开始实现任何东西,但我希望能够将JSON中的数据“设置”到包含单个记录模板的HTML元素中,或者使用一些参数渲染某些项目集合,该参数是每个项的模板HTML,但也要能够以与用于呈现项的源JSON相同的格式获取JSON对象(我希望我的初始JSON包含有关记录行行为的更多信息,而无需进行Ajax请求以检查用户是否可以执行某些操作,而且并不是所有这些信息都在模板中可见)。
我知道我可以制作具有对象每个属性的隐藏表单和映射器函数来存储,但对我来说听起来有点过度杀伤力,而且我不喜欢它,我想要一些更轻巧的“信封”。
我想知道是否有一些JS库可以将JSON对象序列化和反序列化为HTML,以便我可以将其存储在DOM中的某个位置(即包含数据显示的元素中,但我希望能够存储不必显示为表单元素的其他属性)。 更新 正如第一个答案建议的那样,将JSON存储在全局变量中,我也考虑过这个问题,我的“最佳”解决方案是制作JavaScript模块(或jQuery插件),它可以对JSON进行“映射”以便于html,并且如果无法将值存储在html中,则可以将它们存储在内部变量中,因此当我想要从html元素中“获取”数据时,它可以从其本地副本中提取。我想知道是否有更好的方法?如果有一些库可以将这些信息存储在变量中,并实时将数据与html绑定,我会非常高兴。
我还没有开始实现任何东西,但我希望能够将JSON中的数据“设置”到包含单个记录模板的HTML元素中,或者使用一些参数渲染某些项目集合,该参数是每个项的模板HTML,但也要能够以与用于呈现项的源JSON相同的格式获取JSON对象(我希望我的初始JSON包含有关记录行行为的更多信息,而无需进行Ajax请求以检查用户是否可以执行某些操作,而且并不是所有这些信息都在模板中可见)。
我知道我可以制作具有对象每个属性的隐藏表单和映射器函数来存储,但对我来说听起来有点过度杀伤力,而且我不喜欢它,我想要一些更轻巧的“信封”。
我想知道是否有一些JS库可以将JSON对象序列化和反序列化为HTML,以便我可以将其存储在DOM中的某个位置(即包含数据显示的元素中,但我希望能够存储不必显示为表单元素的其他属性)。 更新 正如第一个答案建议的那样,将JSON存储在全局变量中,我也考虑过这个问题,我的“最佳”解决方案是制作JavaScript模块(或jQuery插件),它可以对JSON进行“映射”以便于html,并且如果无法将值存储在html中,则可以将它们存储在内部变量中,因此当我想要从html元素中“获取”数据时,它可以从其本地副本中提取。我想知道是否有更好的方法?如果有一些库可以将这些信息存储在变量中,并实时将数据与html绑定,我会非常高兴。
更新2 现在使用http://knockoutjs.com/完成此操作,不再需要在DOM中保留json,knockout会自动进行JSON<=>HTML映射。