【发布时间】:2010-11-13 11:32:48
【问题描述】:
我有下面的代码。代码的目的是获取存储在本地存储中的所有值,并将它们显示在两个 HTML 元素中,分别为'title' 和'textLoc' 的ids。 'title' 是 <input type="text">,'textLoc' 是 <textarea>。我希望将值存储在<textarea> 中,并将密钥存储在<input type="text"> 中。值被正确存储,但键没有。关于为什么会这样的任何想法?
var tests = [];
var titles = [];
var finalTests = "";
var key, value;
for (var i = 0; i < localStorage.length; i++) {
key = localStorage.key(i);
value = localStorage.getItem(key);
tests.push(value);
titles.push(key);
finalTests += "<tr><td><a class=\"dashlinks\" href=\"javascript:void\" onclick=\"rememberTest("+i+")\">" + key + "</a></td></tr>";
}
for (i=0; i<tests.length; i++) {
document.getElementById('title').innerHTML = titles[i];
document.getElementById('textLoc').innerHTML = tests[i];
}
【问题讨论】:
-
我很好奇你想用底部的循环做什么。每次通过循环它都会替换这些项目的 innerHTML,所以您将看到的只是最后一个。
-
是的,您每次都在替换值。可能你想追加?
-
@rob 这只是显示代码实际作用的一种非常小的方式。它还经历了许多其他代码,这只是总结它的最简单方法。相信我,它非常有用。
-
@aip.cd.aish 我的意思是每次都替换值。
标签: javascript debugging local-storage