如何使用JSON
字符串(相当大)作为HTML5
的数据库
我知道我们可以使用localStorage.setItem('key',value)
来存储特定值。我的JSON
字符串包含200到300条记录
[{"key":"value"....},
{"key":"value"....},
{"key":"value"....},
......
.....
...
//around 300
]
现在我将整个JSON
放在div
display
none
说JSON
并访问$.parseJSON($('#mydivid').html());
这样
{{1}}
还有其他替代建议吗?谢谢
答案 0 :(得分:1)
我不确定我是否理解这个问题。
假设您的服务器生成了一个json文件(如果您愿意,可以使用MB),您可以使用简单的ajax查询获取它,解析它,然后将其用作
var myval = database['somekey'];
你不应该将它包装在你的html中,如果只有数据库发生变化,它会阻止页面的正常缓存。
您的json将存储或生成在第二个单独的.json文件中(您可以在PHP中生成)。
获取它的功能如下所示:
var database;
function fetchDatabse(callback) {
var httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
if (httpRequest.readyState === 4) {
if (httpRequest.status === 200) {
database = eval('('+httpRequest.responseText+')');
if (callback) callback();
}
}
};
httpRequest.open('GET', 'database.json?time='+(new Date().getTime()));
httpRequest.send();
}
请注意,通常使用ajax查询仅获取数据库的某些部分会更好。
如果真的想要在页面中嵌入json,而不是将其嵌入隐藏的div中,请将其嵌入脚本中:
<script>
var database = {
...
};
</script>