Javascript帮助设置/获取每个输入元素的本地存储数据
Javascript help setting/getting local storage data for each input element
我一直在做这件事,而且它几乎已经成功了。我有一种感觉,循环中的setInterval是无法完成的,或者不起作用。如果没有setInterval和最后的"if"语句,它会完美地遍历元素,并在我设置为的情况下为每个元素添加一个className。如果有人能告诉我哪里出了问题,下面是我的脚本:
(function() {
var localStorageID = document.getElementById('local-storage');
var inputTags = ['input', 'textarea', 'select', 'button'];
// Loop through all the input tags on the page
for(var i = 0; i < inputTags.length; i++) {
// Create a variable that matches input tags inside our #localStorage
var localStorageTag = localStorageID.getElementsByTagName(inputTags[i]);
var formData = {};
for(var z = 0; z < localStorageTag.length; z++) {
formData[localStorageTag[z].name] = localStorageTag[z].value;
}
localStorage.setItem('formData', formData);
if(localStorage.getItem('formData')) {
// Try to achieve something
}
}
})();
您不能在localStorage中存储对象。它们一定是字符串。使用JSON.stringfy()将对象转换为字符串,然后在从localStorage检索时使用JSON.parse()将字符串转换为字符串。
编辑:例如:
localStorage.setItem('formData', JSON.stringify(formData));
var fd= JSON.parse(localStorage.getItem('formData'));
if(fd) {
// Try to achieve something
}
相关文章:
- 使用JQuery检索元素数据
- WebGL错误-错误:WebGL:bindBuffer:buffer已包含元素数据
- 如何在字符串中包含隐藏的 HTML 元素 - 数据表 - jquery
- 聚合物硒测试访问子元素数据
- 如何将动态元素数据传输到 struts2.
- j查询如何将值从输入字段设置为其他元素数据属性
- jQuery只会被点击元素数据
- 按方法动态更改元素数据
- 将父聚合物元素数据暴露给子元素
- 第一个jQuery插件-如何以正确的方式保存关联元素数据
- 将元素[数据]发布到服务器端的最佳方式
- Javascript隐藏对象元素数据值的子节点
- 获取AngularJS脚本中的HTML元素数据
- jQuery存储要在回调中使用的任意元素数据
- 查找父元素数据值并显示它
- 从元素数据中获取对象属性
- 插入HTML表格行"标题"基于动态可见元素数据属性的研究
- 查找具有与另一个元素数据属性匹配的id的元素的最佳方法
- 如何获得元素数据调试脚本
- Aurelia定制元素数据绑定