html代码:<form id="div"> 姓名:<input type="text" name="name" value=""><br/> 年龄:<input type="text" name='age' value=""><br/> <button id="save">一键缓存</button></form>js代码:$(function () { $('#save').click(function () { var history = []; //先清除原来的缓存 window.localStorage.formHistory = ''; for(var i = 0; i < $('#div input').length; i++){ if( $('#div input')[i].type == 'text'){ var prop = $('#div input')[i].name; alert(prop); history.push({ prop : $('#div input')[i].value}); } } window.localStorage.formHistory = JSON.stringify(history); })})点击button后,我是想将input中的值存入localstorage中,但是在控制台中发现结果如下:[{"prop":"11"},{"prop":"22"}]我想存入的结果是如下:[{"name":"11"},{"age":"22"}]就是让程序能够自动获得每个input标签的name属性作为存入对象的属性,代码要怎么修改呢?为什么我这样写不行呢?先谢了!
1 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
history.push({ [prop]: $('#div input')[i].value });
或者
var h = {};
h[prop] = $('#div input')[i].value;
history.push(h);
添加回答
举报
0/150
提交
取消