0

我有一个带有 4 个输入文本框的表单,在保存时,我将值保存到 4 个 localStorage 变量。

再次在页面加载时,我检索它们并使用这些值设置 4 个表单标签

$(".formFieldUserData").each(function(index)
            {
            var key = localStorage.key(index);
            $(this).val(localStorage.getItem($(this).attr('name')));
            $("#"+key+"Txt").html(localStorage.getItem($(this).attr('name')));
            });

现在 Chrome 中似乎存在一些顺序问题。虽然 Firefox 完美地设置了该值,但在 Chrome 中似乎以随机顺序访问 localStorage。

我该如何解决这个问题?

4

1 回答 1

0

Chrome 存储根据键排序的数据(在您的情况下,它将是 desc->email->name->phone)。其他浏览器有自己的顺序。所以你不能依赖于获取数据的顺序。你可以使用一个数组。但是根据我的经验,您不能在 localStorage 中存储关联数组(带有字符串键的数组)。所以如果你想存储一个关联数组,你必须首先stringify将数组存储在 localStorage 中,然后使用它,你可以JSON.parse像对象一样使用和使用它。

小提琴

于 2013-03-09T18:11:00.513 回答