需要指导:将表单实例保存到本地存储
问题描述:
我创建了一个页面,将表单保存为本地存储为JSON。它的工作原理,但我想扩展它以节省多天: http://daverau.info/happy/需要指导:将表单实例保存到本地存储
什么是一些方法来保存多天的日记条目?按日期分页表单数据?创建多个窗体实例?我是否应该开始放弃dumbFormState插件并以不同方式保存到本地存储?
我正在寻找选项,希望有人能指点我的方向去。
答
而是保存对象数据的,因为我发现它下面:
[
{ "selector": "input[name=\"gratitude1\"]", "val": "" },
{ "selector": "input[name=\"gratitude2\"]", "val": "" },
{ "selector": "input[name=\"gratitude3\"]", "val": "" },
{ "selector": "textarea[name=\"journal\"]", "val": "" },
{ "selector": "input[name=\"exercise_num\"]", "val": "" },
{ "selector": "input[name=\"meditation_num\"]", "val": "" },
{ "selector": "input[name=\"kindness\"]", "val": "" },
{ "selector": "input[name=\"tdate\"]", "val": "2012-3-23" }
]
设置键为当前日期:
[
{ "2012-3-22" :
[
{ "selector": "input[name=\"gratitude1\"]", "val": "" },
{ "selector": "input[name=\"gratitude2\"]", "val": "" },
{ "selector": "input[name=\"gratitude3\"]", "val": "" },
{ "selector": "textarea[name=\"journal\"]", "val": "" },
{ "selector": "input[name=\"exercise_num\"]", "val": "" },
{ "selector": "input[name=\"meditation_num\"]", "val": "" },
{ "selector": "input[name=\"kindness\"]", "val": "" }
]
},
{ "2012-3-23" :
[
{ "selector": "input[name=\"gratitude1\"]", "val": "" },
{ "selector": "input[name=\"gratitude2\"]", "val": "" },
{ "selector": "input[name=\"gratitude3\"]", "val": "" },
{ "selector": "textarea[name=\"journal\"]", "val": "" },
{ "selector": "input[name=\"exercise_num\"]", "val": "" },
{ "selector": "input[name=\"meditation_num\"]", "val": "" },
{ "selector": "input[name=\"kindness\"]", "val": "" }
]
}
]
答
我可能会将日期添加到localStorage
key
或取决于数据,在存储值内部(用特殊字符或使用保留空格分隔)。
例如,实际的数据可能是这样的:
"I'm feel'n pretty good today"
要添加的日期,我可以添加:
"032312I'm feel'n pretty good today"
然后,它只是一个事使用substring
来提取日期或数据。
不知道该API效率如何,我只是在这里啪啪啪......你不能把一个物体串起来吗?这样localStorage项目的关键实际上就是“happyApp”(或其他),并且该值是可以通过happyApp.date访问的一组嵌套对象。 – 2012-03-24 00:29:31
现在把它放到API中,我意识到它将它存储在每个源的基础上,所以你不需要happyApp命名空间。我会保留评论以防其他人从我的错误假设中学习。 ;-) – 2012-03-24 02:40:21