Javascript 通过JSON数组/对象循环HTML表单数据?

Javascript 通过JSON数组/对象循环HTML表单数据?,javascript,arrays,json,local-storage,Javascript,Arrays,Json,Local Storage,我已经在这个网站和互联网上搜索了几个小时了,之前我问了一个问题,这至少让我更进一步了。。然而,我真的很难理解如何将多个阵列保存到我的localStorage 我可以理解使用硬编码数组的过程,但只要我尝试实现localStorage数据,我就不知道该怎么做 以下是我迄今为止(在另一位so用户的帮助下)尝试的内容: $(“#提交”)。单击(函数(){ //预备 var formData=$(“#regForm”).serializeArray(); //获取所有存储为数组[] var booking

我已经在这个网站和互联网上搜索了几个小时了,之前我问了一个问题,这至少让我更进一步了。。然而,我真的很难理解如何将多个阵列保存到我的
localStorage

我可以理解使用硬编码数组的过程,但只要我尝试实现
localStorage
数据,我就不知道该怎么做

以下是我迄今为止(在另一位so用户的帮助下)尝试的内容:

$(“#提交”)。单击(函数(){
//预备
var formData=$(“#regForm”).serializeArray();
//获取所有存储为数组[]
var bookings=JSON.parse(localStorage.getItem('bookings')| |'[]);
for(formData=0;formData
如果没有for循环,它可以正常工作,但是当我用新数据重新提交表单时,它会替换表单,而不是创建新索引

基本上,我正在尝试为遛狗创建一个约会计划,我需要能够查看每个预订、修改、删除,当然还要查看预订(所有客户端-无数据库)


我应该先初始化数组吗?如何接近for循环?非常感谢您的帮助,因为我想学习,但我已经在这方面工作了几个小时,运气不佳。

您可以像下面这样使用。 将新值保存在先前存储在变量中的值中,并在最后更新本地存储

$("#submit").click(function () {

    var formData = $("#regForm").serializeArray();
    var bookings = JSON.parse(localStorage.getItem('bookings') || '[]');
   
    for (formData = 0; formData < localStorage.length; formData++) {
        bookings.push(formData)   
    }
    localStorage.setItem("bookings", JSON.stringify(bookings));
});
$(“#提交”)。单击(函数(){
var formData=$(“#regForm”).serializeArray();
var bookings=JSON.parse(localStorage.getItem('bookings')| |'[]);
for(formData=0;formData
(也不是“JSON数组”)好吗。。?这就是我所知道的,我对这一点还不熟悉。你有什么解决办法吗?这个循环没有任何意义。您正在使用
0
覆盖
formData
,然后调用
.setItem()
localStorage.length
时间,使用始终相同的键(
bookings
)并将
[]
存储为其内容。找到一种以结构化方式(例如数组)存储所有约会的方法。如果您找到了合适的解决方案,那么您可以将该“东西”(可能是一个对象数组或的对象)存储在
localStorage
中,只需调用一次
.setItem(“bookings”,JSON.stringify())
谢谢,我理解这一点,但我不确定如何实现它,我能得到一张唱片,但如果我做了一张新唱片,它会取代旧唱片。我知道我的代码不正确,但我只是想展示我的想法/工作,希望有人能提供帮助。这现在不起作用,我没有做任何更改,但出于某种原因,现在只给我一个数字数组?
$("#submit").click(function () {

    var formData = $("#regForm").serializeArray();
    var bookings = JSON.parse(localStorage.getItem('bookings') || '[]');
   
    for (formData = 0; formData < localStorage.length; formData++) {
        bookings.push(formData)   
    }
    localStorage.setItem("bookings", JSON.stringify(bookings));
});