如何使用数组或对象将html源代码保存到HTML 5本地存储中。
例如,我想将以下输入标记作为数组存储到本地存储中(这里是3个数组元素中的3个输入标记)或对象
<input type="text" class="in1" value="img1">
<input type="text" class="in2" value="img2">
<input type="text" class="in3" value="img3">
我该如何解决这个问题?
答案 0 :(得分:1)
本地存储仅在键/值对中存储字符串,因此您将无法存储实际对象或数组。您可以做的是将输入存储在JSON对象中
var inputs = {
0: '<input type="text" class="in1" value="img1">',
1: '<input type="text" class="in2" value="img2">',
2: '<input type="text" class="in3" value="img3">'
}
然后你打电话:
JSON.stringify(inputs)
stringify将以json格式返回一个字符串,您可以将此字符串存储到localStorage
存储:
localStorage.setItem('inputs', JSON.stringify(inputs))
要将结果作为对象检索,您需要使用JSON.parse
JSON.parse(localStorage.getItem('inputs'))
答案 1 :(得分:0)
或者还有一个叫做sessionvars的解决方案,不知道确切的网站,但如果你进行搜索,它对于多网站会话存储也非常有用。
答案 2 :(得分:0)
我不确定你为什么这样做,但回答你的问题:
<强> HTML 强>:
<div id="container">
<input type="text" class="in1" value="img1">
<input type="text" class="in2" value="img2">
<input type="text" class="in3" value="img3">
</div>
的的Javascript 强>:
localStorage.container = document.getElementById('container').innerHTML;
的的jsfiddle 强>:
http://jsfiddle.net/jjHTL/