是否可以以某种方式将JSON对象直接存储到DOM中
Is it possible to store a JSON object directly into the DOM somehow?
如果手头有JSON.parse的输出,是否有将该对象作为单个实体存储在DOM中的合法方法?
即
jsonObject=JSON.parse(something);
我想考虑将jsonObject作为某个元素的(子||textNode||??)存储在DOM中,然后检索它,以便在检索后立即通过通常的访问其内容
jsonObject.keyName
我想避免添加几十个数据集属性,然后被迫一次提取一个。如果您有几十个键:值对,那么这将是太多的工作,而且看起来效率太低。
数据属性必须是字符串,不能直接在其中存储对象。因此,不要解析JSON字符串,只需将JSON字符串直接存储在数据集属性中即可。
如果使用jQuery,它的.data()
方法将获取一个对象,并根据需要自动字符串化它。
如果要将对象与所有元素关联的元素都有ID,另一种选择是使用全局对象作为表,键入元素的ID。
jsonTable[id] = jsonObject;
这取决于页面的生命周期。如果您不打算重新加载页面,最好将其作为JavaScript变量留在页面上。
您还可以考虑将原始JSON存储在隐藏的文件或其他一些隐藏的DOM元素中。请记住,如果您发布页面
TGH有正确的答案。将其保留为变量。
另一种选择是使用history.pushState()将其与页面的URL一起存储。如果您希望用户能够单击后退按钮并将json恢复到该页面的值,这将非常有用。
如果您想存储与DOM元素相关联的数据(JSON)。
您可以使用jQuery数据函数。
例如,将JSON存储到餐厅行(div)
$("div.restaurant-row").data("info",{purchases: "blablabla", mealFormulas: "xxxxx"});
例如,获取DOM关联数据
$("div.restaurant-row").data("info").purchases; //blablabla
我不确定这是否是你想要的。
希望这对你有帮助。
相关文章:
- 如何存储DOM节点
- 性能问题:存储对DOM元素的引用与使用选择器相比
- 如何在 javascript 中存储 dom 元素的变量
- 我可以在Javascript的DOM节点中存储非文本属性吗?
- 什么可以存储在 DOM 存储中
- 尝试访问本地存储时 javascript/html5 中的 dom 异常 18
- 在DOM中存储全局变量的javascript
- 将来自dom元素的事件侦听器存储在JavaScript中
- 如何在jQuery中将DOM元素说明符存储为JS变量
- 单击时将html存储到变量中,从DOM中删除,然后在另一次单击时将其放回
- 用于存储/检索Backbone.js的模式查看与dom元素关联的实例
- 用于在客户端上存储html字符串以供以后插入DOM
- 在http和https之间共享dom存储
- 将自定义数据存储在dom元素中
- 是否可以以某种方式将JSON对象直接存储到DOM中
- 将 DOM 元素内容存储在变量中,并用它更新相同的 DOM 元素
- 在javascript变量中临时存储DOM中动态位置的文本
- AngularJS指令,用于存储DOM元素并在表单提交时重定向
- 如何在变量中存储DOM样式的属性
- Dom引用vs存储Dom引用